String类

1. String类位于java.lang包中,使用时无需导包。

2. 创建字符串的两种方式:

  ① 直接指定(字面量声明):String str = "abc";

  ② 使用 new 关键字声明:String str = new String ("abc");

3. 使用 String类 时的常用方法:

  ① str.length()返回字符串的长度。length() 是一个方法。

 System.out.println("请输入用户名:");
String str=sc.next();
if(str.length()<6){
System.out.println("用户名最小为6位!");
}

  ② str.equals() 判断字符串是否相等。

 public static void main(String[] args) {
String str1=new String("abc");
String str2=new String("123");
System.out.println(str1.equals(str2)); }

  结果为false。

  注意:.equals()和 == 的对比原则:.equals()是判断两个字符串中的每一个字符是否相等;而 == 是判断两个字符串的存储地址是否相等。

  ③ .toLowerCase() 将所有字符转换为小写。

    .toUpperCase() 将所有字符转换为大写。

 public static void main(String[] args) {
String str1=new String("HELLO");
String str2=new String("world");
System.out.println(str1.toLowerCase()); //大写转换为小写
System.out.println(str2.toUpperCase()); //小写转换为大写 }

  结果为"hello" "WORLD"。

  ④ str1.concat(str2) 连接字符串。将str2连接到str1后面,并返回一个新的字符串。

       而使用 + 连接才是最常用的。

public static void main(String[] args) {
String str1=new String("生日");
String str2=new String("happy!");
System.out.println(str1.concat(str2)); //使用concat连接 System.out.println(str1+str2); //使用 + 连接
}

  两种方法结果一样:

  

  ⑤ .indexOf()在字符串中查找指定的字符或子串,并返回其下标。如果没有返回-1。

        可以接受字符串、字符、整数类型的参数。如果传入整数。将根据ASCII码自动转化为字符。

       .lastindexOf()在字符串中查找指定的字符或子串最后一次出现的位置,并返回去下标。如果没有返回-1。

  

 public static void main(String[] args) {
String str1=new String("abcdefg");
System.out.println(str1.indexOf("c")); //返回2
System.out.println(str1.indexOf("def")); //返回3
System.out.println(str1.indexOf("acd")); //返回-1
System.out.println(str1.indexOf(100)); //返回3,"d"的ASCII码值为100
String str2=new String("abaafg");
System.out.println(str2.lastIndexOf("a")); //返回3 }

  结果为:

  

  ⑥ .substring()截取字符串的指定位置,并返回一个新的子串。

       .sunstring(3)传入一个参数,表示起始下标,将从此下标开始,一直截到字符串最后;

       .sunstring (3,5)传入两个参数,表示起始下标和结束下标,为左闭右开区间,包含起始下标不包含结束下标。

 public static void main(String[] args) {
String str=new String("abcdefg");
System.out.println(str.substring(3)); //返回defg
System.out.println(str.substring(1, 3)); //返回bc }

  结果为:

  

  ⑦ .trim()去掉字符串两端的空格。不能去掉中间空格。

public static void main(String[] args) {
String str1=new String(" abcdefg ");
System.out.println(str1.trim()); //返回"abcdefg"
String str2=new String("abc defg");
System.out.println(str2.trim()); //返回"abc defg" }

  结果为:

  

  ⑧ .replace("abc","*") 将字符串中的指定区域,用新的字符串替换掉。

  

public static void main(String[] args) {
String str=new String("abcdefg");
System.out.println(str.replace("abc", "***")); }

  结果为:

  

  ⑨ .split(" "); 传入指定字符,将字符串分割为多个子串,返回一个字符串类型的数组;如果传入一个空字符串,则将原字符串的每一个字符都进行分隔。

     .split(" ",3)第二个参数,可以传入一个整数,表示将当前字符串分隔为几部分;如果传入的整数小于原来分割的总部分,则剩余的区域将不再分割。

 public static void main(String[] args) {
String str1=new String("abcdefg");
String[] a1=str1.split("");
System.out.println(Arrays.toString(a1)); //返回字符串类型的数组,将每一个字符进行分割。 String str2=new String("abcdefg");
String[] a2=str2.split("", 3);
System.out.println(Arrays.toString(a2)); //分割为3部分 }

  结果为:

  

Java基础——字符串String的更多相关文章

  1. Java基础 - 字符串 String

    字符串就是用字符拼接成的文本值,字符串在存储上类似数组,在java语言中把字符串当做对象进行处理 创建字符串 package com.mingri.chapter_02; public class d ...

  2. java基础---字符串string

    1.字符创的概念 java字符串就是Unicode字符序列.例如,串“Java\u2122”由5个Unicode字符J.a.v.a和TM.java没有内置的字符串类型,而是在标准库Java类库中提供了 ...

  3. Java基础-字符串(String)常用方法

    Java基础-字符串(String)常用方法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.java的API概念 Java的API(API:Application(应用) Pr ...

  4. Java基础-字符串连接运算符String link operator

    Java基础-字符串连接运算符String link operator 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 字符串链接运算符是通过“+”进行拼接的. 一.使用“+”进行字 ...

  5. Java基础之String、StringBuffer、StringBuilder浅析

    Java基础之String.StringBuffer.StringBuilder浅析 一.前言: 位于java.lang包下的String.StringBuilder.StringBuffer一般都是 ...

  6. Java常量字符串String理解

    Java常量字符串String理解 以前关于String的理解仅限于三点:1.String 是final类,不可继承2.String 类比较字符串相等时时不能用“ == ”,只能用  "eq ...

  7. java中字符串String 转 int(转)

    java中字符串String 转 int String -> int s="12345"; int i; 第一种方法:i=Integer.parseInt(s); 第二种方法 ...

  8. Java中字符串string的数据类型

    Java中字符串string的数据类型 时间:2017-07-03 08:01:47 YuanMxy 原文:https://blog.csdn.net/YuanMxy/article/details/ ...

  9. java基础18 String字符串和Object类(以及“equals” 和 “==”的解析)

    一.String字符串 问:笔试题:new String("abc")创建了几个对象?答:两个对象,一个对象是 位于堆内存,一个对象位于字符串常量池 class Demo17 { ...

随机推荐

  1. AndroidStudio R 文件标红

    一种不常见的问题 AndroidStudio 文件大小会有一定的限制,超过一定大小将无法解析.大型的Android项目容易出现这个问题. 可以按照下面的步骤解决这个问题: 在AndroidStudio ...

  2. POJ-1032-拆数字

    Description New convocation of The Fool Land's Parliament consists of N delegates. According to the ...

  3. 微信公众平台开发,模板消息,网页授权,微信JS-SDK,二维码生成(4)

    微信公众平台开发,模板消息,什么是模板消息,模板消息接口指的是向用户发送重要的服务通知,只能用于符合场景的要求中去,如信用卡刷卡通知,购物成功通知等等.不支持广告营销,打扰用户的消息,模板消息类有固定 ...

  4. 【Java实现】栈和队列就是这么简单

    一.前言 上一篇已经讲过了链表[Java实现单向链表]了,它跟数组都是线性结构的基础,本文主要讲解线性结构的应用:栈和队列 如果写错的地方希望大家能够多多体谅并指正哦,如果有更好的理解的方式也希望能够 ...

  5. JavaWeb学习笔记五 会话技术Cookie&Session

    什么是会话技术? 例如网站的购物系统,用户将购买的商品信息存储到哪里?因为Http协议是无状态的,也就是说每个客户访问服务器端资源时,服务器并不知道该客户端是谁,所以需要会话技术识别客户端的状态.会话 ...

  6. 04_Python的数据类型1数值和字符串_Python编程之路

    上一节我们通过一个helloworld程序学习python的一些简单操作,还有输入与输出 这节我们来讲Python的数据类型与变量的操作 Python的交互器 在讲这个之前,我要先讲一下python的 ...

  7. Linux 终端 Bash 常用快捷键介绍及经验

    1. 最重要的自动补全 命令 解释 Tab 自动补全 不用多说,自动补全可以节省大量时间 2. 编辑跳转 命令 解释 Ctrl + A 跳转到当前行首 Ctrl + E 跳转到当前行末 Alt + F ...

  8. Redis——常见面试题

    一.memcached与redis的区别? 1.存储方式不同.memcached把数据全部存在内存之中,断电之后会挂掉,而redis虽然也用到了内存,但是会有部分数据存在硬盘中,保证数据持久性. 2. ...

  9. vue内置指令详解——小白速会

    指令 (Directives) 是带有 v- 前缀的特殊属性,职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM. 内置指令 1.v-bind:响应并更新DOM特性:例如:v-bi ...

  10. 格式化输出io:format的奇技淫巧

    格式化输出io:format是我接触Erlang使用的第一个库函数(io:format("Hello World")),随着学习的深入,它也是我debug优先选择最简单直接的工具. ...