java学习——27.字符串

字符串是字符的有限序列。

Java中的字符串String是一个类,属于引用数据类型。

今天介绍String中的一些概念和方法。

1、字符串常量

字符串常量是由双引号括起来表示的字符序列。

如:“abc”,”!#@%ji”均为字符串常量。

其中可包含转义字符,如:“hello\n”。

注意:字符串常量只能在同一行内,不能换行。

2、字符串长度

字符串长度指其中包含的字符个数。如:“welcome”长度为7.

空串长度为0。

一个字母、一个汉字均为一个字符,数据类型是 char,占2字节。

字符串中首字符的序号为0.

-1表示某字符不在指定字符串中。

3、字符串变量

声明字符串变量的语法格式同基本数据类型。

String s1;//声明变量,s1为字符串类型

4、 字符串运算

(1)    赋值运算

对字符串变量可进行赋值运算。例如:

s1=”hello”;

String s2=s1;

(2)    连接运算

Java使用字符串连接运算符“+”将两个字符串首尾连接起来。如:

s=”hello ”+”cj”;//结果为”hello cj”

+=定义为字符串变量在原串基础上连接另一个字符串。如:

s+=”,xyz”;//结果为“hello cj,xyz”

5、 字符串是类,不是字符数组

字符串为类,不是字符数组,因此不能用【】来取字符串中的字符,而只能用类String所定义的方法。Java中定义的字符串的方法有:

(1)    length()方法,用来取字符串的长度。

需要调用此方法时,要用.运算符。

String s=”abcdefg”;

s.length();//返回一个整数类型的数据,值为字符串的长度:7。

(2)charAt(int i)方法:用来取第i个字符。

注意字符串的首字符的序号为0。

例:String s=”abcdefg”;

char c=s.charAt(1);//c的值为’b’。

注:字符用单引号括起来'’,字符串用的是双引号“”。

(3)    equals(Object ojb)方法:比较当前串与obj引用的串是否相等,返回值为boolean类型。

例:String s1=”abcdefg”,s2=”abcc”;

s1.equals(s2);//值为false.

(4)    substring(int begin)方法:用来取子串,返回从begin开始到串尾的子串。

substring(int begin,int end)方法:用来取子串,返回从begin开始到end结尾的子串。

(5)    format(String format,Object…args)方法:格式化字符串。

例:以上方法简单举例。

public class stringlearn {

public static void main(String args[]){

System.out.println("Welcome");//字符串常量

String s1;//字符串变量,声明

s1="abc";//赋值

System.out.println("s1="+s1);

String s2="hello";//声明时赋值

System.out.println("s2="+s2);

s2+=s1;//复合赋值运算

System.out.println("s2+=s1后,s2="+s2);

System.out.println(s2+""+s1);

int s1length=s1.length();//与数组不同,没有Length属性,只能调用方法

System.out.println("Thelength of s1 is "+s1length);

int s2length=s2.length();

System.out.println("Thelength of s2 is "+s2length);

boolean isequal=s1.equals(s2);

System.out.println("s1是否等于s2: "+isequal);

System.out.println("s1的第2个字符是:"+s1.charAt(1));//序号从0开始

System.out.println("s2从第2个字会后是:"+s2.substring(1));

System.out.println(String.format("s2=%s,s1=%s",s2,s1));

int a[]=new int[10];

for(int i=0;i<=9;i++)

a[i]=i;

for(int i=0;i<=9;i++)

System.out.print(String.format("%4d",a[i]));

System.out.println();

float b[]=new float[10];

for(int i=0;i<=9;i++)

b[i]=i;

for(int i=0;i<=9;i++)

System.out.print(String.format("%5.2f",b[i]));

System.out.println();

System.out.printf("100的十六进制是:%x ",100);

}

}

其运行结果如下:

(0)

相关推荐

  • 「八大排序算法」16张图带你搞懂基数排序

    前言 在排序算法中,大家可能对桶排序.计数排序.基数排序不太了解,不太清楚其算法地思想和流程,也可能看过会过但是很快就忘记了,但是不要紧,幸运的是你看到了本篇文章.本文将通俗易懂的给你讲解基数排序. ...

  • 多维数组

    今日学习总结: 多维数组 针对数组中的元素类型没有特殊要求,所以允许数组的元素是数组.多维数组可以理解为数组的数组 数组中的每个数组元素可以是一个数组,但是不要求每个充当元素的数组长度一致 int[] ...

  • Java学习——100、判断回文字符串

    回文字符串:即字符串"从前向后读"和"从后向前读"都相同. 算法并不难,用循环,将字符串的第0个和最后一个比较,第1个和倒数第二个比较,到中间数字为止,都相等则 ...

  • Java学习-注解和反射

    注解 java.Annotation Annotation的作用:可以呗其他程序读取 Annotation的格式 注解是:@注释名 在代码中存在,还可以添加一些参数 ​@SuppressWarning ...

  • Java学习-多线程

    多线程 任务(Task).进程(Process).线程(Thread) 进程的创建 1.继承Thread类 自定义线程类继承Thread类 重写run()方法,编写线程执行体 创建线程对象,调用sta ...

  • Java学习-Mybatis

    Mybatis Maven依赖: <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependenc ...

  • Java 学习笔记

    您对计算机(电脑)有了解吗? 计算机组成 系统软件 直接和硬件交互的软件叫系统软件,例如 win7.win8.Linux.mac等操作系统 应用软件 通常在运行在系统软件上,也就是在系统软件上开发的软 ...

  • Java –生成随机字符串 – Programming language

    用纯Java生成随机无界字符串 @Testpublic void givenUsingPlainJava_whenGeneratingRandomStringUnbounded_thenCorrect ...

  • java 通过解析字符串数学表达式简单进行计算(包括自定义函数以及带括号的数学表达式)

    package com.jxv.common.utils; import com.alibaba.fastjson.JSON;import org.apache.commons.lang3.Strin ...

  • Java学习-126.2048代码

    本篇帖的是按钮的代码. 因为按钮比较多,包括菜单项的动作,为了区分,我用了两个内部类来实现这两部分代码. //本类是Game_2048类的内部类,用来实现上.下.左.右四个按钮,以及重新开始和退出游戏 ...

  • Java学习—125.2048代码

    本篇帖的是部分动作代码. 每个方法前都有注释说明本方法的功能. //随机选取一个位置,并填入数字2.如果此位置中已有数字,那么换一个位置. public void rule(){ x=ran.next ...