java学习——java学习进度一String类1(学习记录——供回溯)

String 分割字符串

  • split( )

在这里插入图片描述

String s = "1,2,3,4";
//未使用split分割前
System.out.println(s.length());

//使用split分割后
String[] ssplit = s.split(",");
System.out.println(ssplit.length);

在这里插入图片描述

  • split( , )
 //两个参数都有的时候,第一个为用来分割的符号,第二个为分割后的数组长度
//当设置分割后的数组长度比分割后的长度不同时以分割长度为准
String s  = "1,2,3,4";
System.out.println(s.split(",", 6).length);

在这里插入图片描述

String类构造方法的使用和理解

  • 1. String s="…";

直接赋值的方式获取一个字符串对象
其字符串会存在串池(StringTable)中,也可理解为字符串常量池(堆内存)(常量池(常量池==Class常量池,Java文件被编译成 Class文件,Class文件中除了包含类的版本、字段、方法、接口等描述信息外,还有一项就是常量池,常量池是当Class文件被Java虚拟机加载进来后存放在方法区 各种字面量 (Literal)和 符号引用)

//以下代码将字符串"1,2,3,4"赋值给了s变量
String s = "1,2,3,4";
  • 2. public String()

使用new的方式来获取一个字符串对象,对象中不含任何内容的空字符(空参构造)

String a =new String();

在这里插入图片描述

  • 3. public String(String original)

传递一个字符串再创建一个字符串对象

//public String(String original) 构造方法,传递一个字符串再创建一个字符串对象
String b =new String("123");

在这里插入图片描述

  • 4. public String(Char[ ] chs)

传递一个字符数组再创建一个字符串对象

//public String(Char[ ] chs)构造方法 ,传递一个字符数组再创建一个字符串对象
char[] chs = {'1','2','3','4'};
String s =new String(chs);

在这里插入图片描述

  • String(字符数组名,数组元素开始位置,转换长度);

Char字节数组的一部分转换成字符串

//String(字符数组名,数组元素开始位置,转换长度);将Char字节数组的一部分转换成字符串
char[] chs = {'1','2','3','4'};
String a =new String(chs,0,2);

在这里插入图片描述

  • 5. public String(byte[] chs)

传递一个字节数组再创建字符串对象

//public String(byte[] chs) 构造方法,传递一个字节数组再创建字符串对象
byte[] bytes = {97,98,99};
String b = new String(bytes);//输出abc(ASCLL编码对照表)

在这里插入图片描述

  • String(字节数组名,数组元素开始位置,转换长度);

bytes字节数组的一部分转换成字符串

//将bytes字节数组的一部分转换成字符串,格式为String(数组名,数组元素开始位置,转换长度);
String c = new String(bytes,0,2);
System.out.println(c);

在这里插入图片描述

截取字符串

  • subString从一个较大的字符串中提取一个子串

subString(x,y): 该方法是截取下标x~y-1 的字符串

//subString(x,y) 该方法是截取下标x~y-1 的字符串
String s = "123456";
s = s.substring(0,3);

在这里插入图片描述##### subString(x) : 该方法是截去前x个字符串后的字符串。

String s = "123456";
s = s.substring(3);

在这里插入图片描述

字符串常量

部分内容来自该网站
Java 语言使用 final 关键字来定义一个常量,其语法如下所示:

final dataType variableName = value

其中,final 是定义常量的关键字,dataType 指明常量的数据类型,variableName 是变量的名称,value 是初始值。
final 关键字表示最终的,它可以修改很多元素,修饰变量就变成了常量。例如,以下语句使用 final 关键字声明常量。

public class HelloWorld {
    // 静态常量
    public static final double PI = 3.14;
    // 声明成员常量
    final int y = 10;

    public static void main(String[] args) {
        // 声明局部常量
        final double x = 3.3;
    }
}
  • 字符型和字符串常量值

Java 的字符型常量值是用单引号引起来的一个字符,如 ‘e’、E’。需要注意的是,Java 字符串常量值中的单引号和双引号不可混用。双引号用来表示字符串,像 “11”、“d” 等都是表示单个字符的字符串。
在这里插入图片描述

字符串判等,判断字符串是否为null

  • 空字符串与null区别
    1、类型 null表示的是一个对象的值,而并不是一个字符串。例如声明一个对象的引用,String a = null ; "“表示的是一个空字符串,也就是说它的长度为0。例如声明一个字符串String str = “” ;
    2、内存分配 String str = null ; 表示声明一个字符串对象的引用,但指向为null,也就是说还没有指向任何的内存空间; String str = “”; 表示声明一个字符串类型的引用,其值为”"空字符串,这个str引用指向的是空字符串的内存空间;在java中变量和引用变量是存在栈中(stack),而对象(new产生的)都是存放在堆中(heap)

== 和equals 最大的区别是
== 是运算符,如果是基本数据类型,则比较存储的值;如果是引用数据类型,则比较所指向对象的地址值。
equals是Object的方法,比较的是所指向的对象的地址值,一般情况下,重写之后比较的是对象的值。

String str = null;

//方法一:比较所指向的对象的地址值
System.out.println(str == null|| str.equals(""));

//方法二: 比较字符串长度
System.out.println((str == null || str.length() == 0));

//方法三:使用isEmpty() 方法来判断字符串是否为空
System.out.println(str == null || str.isEmpty());

//方法四
System.out.println((str == null || str == ""));

在这里插入图片描述

String类型转换

  • String类型转换为int类型
String str = "123456";
//String类型转换为int类型
int nstr = Integer.parseInt("123");
System.out.println(nstr);

在这里插入图片描述

  • 将int类型转换为String类型
String str = "123456";
//String类型转换为int类型
int nstr = Integer.parseInt("123");

//将int类型转换为String类型
String str1 = String.valueOf(nstr);
System.out.println(str1);

在这里插入图片描述

  • toCharArray()将当前字符拆分成为字符数组
String str = "123456";
//public char[] toCharArray()将当前字符拆分成为字符数组
char[] chars = str.toCharArray();
for (int i = 0; i < chars.length; i++) {
System.out.println(chars[i]);
}

在这里插入图片描述

  • getByes()将String转成byte类型的数字
String str = "abcd";

        //getBytes()将String转成byte类型的数字
        byte[] bytes = str.getBytes();
        for (int i = 0; i <bytes.length; i++) {
            System.out.println(bytes[i]);
        }

在这里插入图片描述
出现的数字是又ASCll码转换成数字的
在这里插入图片描述

  • String类型转换为double类型

使用Double.parseDouble(String)将字符串转换为双精度

String str ="123.45";
//使用Double.parseDouble(String)将字符串转换为双精度
double dstr = Double.parseDouble(str);

在这里插入图片描述
使用Double.valueOf(String)将字符串转换为双精度double

String str = "123.45";
//使用Double.valueOf(String)将字符串转换为双精度double
double dstr = Double.valueOf(str);
System.out.println(dstr);

在这里插入图片描述
使用Double类的构造函数字符串转换为双精度double

String str = "123.45";
//使用Double类的构造函数字符串转换为双精度double
double dstr = new Double(str);
System.out.println(dstr);

在这里插入图片描述

String类型转float类型

float的意思是“浮动”,是java中的浮点型数据类型,用于存储单精度浮点数,默认值是“0.0f”,内存分配4个字节,占32位,有效小数位6-7位。

String str = "123.45";
//使用Float.parseFloat(string)将String类型转换为float类型
float fstr =Float.parseFloat(str);
System.out.println(fstr);

在这里插入图片描述

String类型转short类型

short类型是一种基本数据类型,用于表示16位有符号整数,取值范围为-32768到32767
使用 Short.parseShort() 方法

String str = "123";
//使用Float.parseFloat(string)将String类型转换为float类型
Short str1 =Short.parseShort(str);
System.out.println(str1);

在这里插入图片描述
使用基本数据类型的对象包装器将String转换为short

String str = "123";
//使用基本数据类型的对象包装器将String转换为short
Short str1 =new Short(str);
System.out.println(str1);

在这里插入图片描述

字符串连接运算

使用连接运算符“+”

String swh = "武汉";
String shz = "杭州";
System.out.println(swh + "欢迎您!");
System.out.println(shz + "欢迎您!");

在这里插入图片描述

使用 concat() 方法

在 Java 中,String 类的 concat() 方法实现了将一个字符串连接到另一个字符串的后面,格式为“字符串1.concat (“字符串2”);”

String Chn = "中国";
System.out.println(Chn.concat("北京").concat("天安门"));

在这里插入图片描述

字符串同其他基本数据类型进行连接

实现将字符串与整型、浮点型变量相连并输出结果

//字符串同其他基本数据类型进行连接
String food ="饺子";// 字符串
int num =10;// 整型变量
float cash = 20.5f;// 浮点型变量
System.out.println("我吃了"+ num +"个" +food +"价格是"+ cash+"元");

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值