Java读取字符串的函数是_Java基础学习笔记——数学函数、字符和字符串

本文详细介绍了Java中的Math类,包括三角函数、指数函数和服务方法等,并讲解了如何进行取整、求最小值和最大值。此外,还讨论了String类型的特性,如比较、连接、转换和获取子字符串的方法,以及从控制台读取字符串和字符的操作。
摘要由CSDN通过智能技术生成

4.2 常用数学函数

Math类中方法分为三类:三角函数、指数函数方法和服务方法。服务方法包括取整、求最小值、求最大值、求绝对值和随机方法。除了这些方法之外,Math类还提供了两个很有用的double型常量,PI(π)和E(自然对数的底数)。可以在任意程序中用Math.PI和Math.E的形式使用这两个变量.

4.2.1 三角函数方法

sin(radians)

返回以弧度位单位的角度的三角正弦函数值

cos(radians)

返回以弧度为单位的角度的三角余弦函数值

tan(randians)

返回以弧度为单位的角度的三角正切函数值

toRadians(degree)

将以度位单位的角度值转换为以弧度表示

toDegrees(radians)

将以弧度为单位的角度值转换为以度表示

asin(a)

返回以弧度为单位的角度的反三角正弦函数值

acos(a)

返回以弧度为单位的角度的反三角函数余弦函数值

atan(a)

返回以弧度为单位的角度的反三角函数正切函数值

asin和atan的返回值是-π/2~π/2的一个弧度值,acos的返回值在0到π之间。

4.2.2 指数函数方法

exp(x)

返回e的x次方

log(x)

返回x的自然底数

log10(x)

返回x的以10为底的对数

pow(a,b)

返回a的b次方

sqrt(x)

对于x>=0的数字,返回x的平方根

4.2.3  取整方法

ceil(x)

x向上取整为它最接近的整数。该整数作为一个双精度值返回

floor(x)

x向下取整为它最接近的整数。该整数作为一个双精度值返回

rint(x)

x取整为它最接近的整数。如果x与两个整数的距离相等,偶数的整数作为一个双精度值返回

round(x)

如果x是单精度数,返回(int)Math.floor(x+0.5);如果x是双精度数,返回(long)Math.floor(x+0.5)

4.2.4  min、max和abs方法

min和max方法用于返回两个数(int、long、float或double型)的最小值和最大值。

abs方法以返回一个数(int、long、float或double型)的绝对值

4.2.5  random方法

random(),生成大于等于0.0且小于1.0的double型随机数(0.0<= Math.random() <1.0)。

0 ~ 9之间的一个随机数   (int)(Math.random() * 10 )

50 ~ 99之间的一个随机数    50 + (int)(Math.random()* 50 )

通常 ,

a + Math.random( ) * b   返回一个a ~ a + b 之间的一个随机数不包括a+b

4.3字符数据类型和操作

4.3.4  字符的比较和测试

Character类中的方法

方法

描述

isDigit(ch)

如果指定的字符是一个数字,返回true

isLetter(ch)

如果指定的字符是一个字母,返回true

isLetterOrDigit(ch)

如果指定的字符是一个字母或者数字,返回true

isLowerCase(ch)

如果指定的字符是一个小写字母,返回true

isUpperCase(ch)

如果指定的字符是一个大写字母,返回true

toLowerCase(ch)

返回指定的字符的小写形式

toUpperCase(ch)

返回指定的字符的大写形式

4.4  String类型

String message = "Welcome to Java";

String 实际上与System类和Scanner类一样,都是Java库中一个预计定义的类。String类型不是基本类型,而是引用类型。任何Java类都可以将变量表示为引用类型。使用引用类型声明的变量成为引用变量,它引用一个对象。这里,message是一个引用变量,它引用一个内容为Welcom to Java的字符串对象。

String 对象的简单方法

方法

描述

length()

返回字符串中的字符数

charAt(index)

返回字符串s中指定位置的字符

concat(s1)

将本字符串和字符串s1连接,返回一个新字符串

toUpperCase()

返回一个新字符串,其中所有的字母大写

toLowerCase()

返回一个新字符串,其中的所有的字母小写

trim()

返回一个新字符串,去掉了两边的空白字符

例:

String message = "Welcome to Java";

System.println("The length of " + message + " is " + message.length());

显示

The length of Welcome to Java is 15

4.4.3 连接字符串

String s3 = s1.concat(s2);

String s3 = s1 + s2;

加号(+)也可以用于连接数字和字符串。在这种情况下,先将数字转换成字符串,然后再进行连接。注意,若要用加号实现连接功能,至少要有一个操作数必须为字符串。如果操作数之一不是字符串(比如,一个数字),非字符串值转换为字符串,并与另外一个字符串连接。

增强的+=操作符也可以用于字符串连接。

4.4.5 从控制台读取字符串

为了控制台读取字符串,调用Scanner对象上的next()方法。

Scanner input = newScanner(System.in);

String s1= input.next();

next()方法读取以空白字符结束的字符串(即''、'\t'、'\f'、'\r'或'\n')。可以使用nextLine()方法读取一整行文本。nextLine()方法读取以按下回车键为结束标志的字符串。

4.4.6 从控制台读取字符

为了从控制台读取字符,调用nextLine()方法读取一个字符串,然后在字符串上调用charAt(0)来返回一个字符。

4.4.7  字符串比较

String对象的比较方法

方法

描述

equals(s1)

如果该字符串等于字符串s1,返回true

equlsIgnoreCase(s1)

如果该字符串等于字符串s1,返回true;不区分大小写

compareTo(s1)

返回一个大于0、等于0、小于0的整数,表名一个字符串是否大于、等于或者小于s1

compareToIgnoreCase(s1)

不区分大小写的比较

startsWith(prefix)

如果字符串以特定的前缀开始,返回true

endsWith(suffix)

如果字符串以特定的后缀开始,返回true

contains(s1)

如果s1是该字符串的子字符串,返回true

4.4.8  获得子字符串

String类包含的获取子串的方法

方法

描述

substring(beginIndex)

返回该字符串的子串,从特定位置beginIndex的字符开始到字符串的结尾

substring(beginIndex,endIndex)

返回该字符串的子串,从特定位置beginIndex的字符开始到下标为endIndex-1的字符。位于endIndex的字符不属于该字符串的一部分

4.4.9  获取字符串的字符或者子串

String类包含获取子串的方法

方法

描述

indexOf(ch)

返回字符串中出现的第一个ch的下标。

indexOf(ch,fromIndex)

返回字符串中fromIndex之后出现的第一个ch的下表。

indexOf(s)

返回字符串中出现的字符串s的下表。

indexOf(s,fromIndex)

返回字符串中fromIndex之后出现的第一个字符串s的下标。

lastIndexOf(ch)

返回字符串中出现的最后一个ch的下标。

lastIndexOf(ch,fromIndex)

返回字符串中fromIndex之前出现的最后一个ch的下标。

lastIndexOf(s)

返回字符串中出现的最后一个字符串s的下标。

lastIndexOf(s,fromIndex)

返回字符串中fromIndex之前出现的最后一个字符串s的下标。

注意:如果没有匹配到都会返回-1

4.4.10  字符串和数字间的转换

int intValue =Integer.parseInt(intString);double doubleValue = Double.parseDouble(doubleString);

2018/4/1

/** * 一、BufferedReader类 public class BufferedReader extends Reader * 从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。 可以指定缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值足够大。 * 通常,Reader 所作的每个读取请求都会导致对底层字符或字节流进行相应的读取请求。因此,建议用 BufferedReader包装所有其 read() * 操作可能开销很高的 Reader(如 FileReader和 InputStreamReader)。 * BufferedReader流能够读取文本行,通过向BufferedReader传递一个Reader对象 * ,来创建一个BufferedReader对象,之所以这样做是因为FileReader没有提供读取文本行的功能. * * 二、InputStreamReader类 * * InputStreamReader 将字节流转换为字符流。是字节流通向字符流的桥梁。如果不指定字符集编码,该解码过程将使用平台默认的字符编码,如:GBK。 * * 构造方法: * * InputStreamReader isr = new InputStreamReader(InputStream * in);//构造一个默认编码集的InputStreamReader类 * * InputStreamReader isr = new InputStreamReader(InputStream in,String * charsetName);//构造一个指定编码集的InputStreamReader类。 * * 参数 in对象通过 InputStream in = System.in;获得。//读取键盘上的数据。 * * 或者 InputStream in = new FileInputStream(String fileName);//读取文件中的数据。可以看出 * FileInputStream 为InputStream的子类。 * * 主要方法:int read();//读取单个字符。 int read(char []cbuf);//将读取到的字符存到数组中。返回读取字符数。 * * 三、FileWriter(少量文字) 和 BufferedWriter(大量文字)实现简单文件写操作 * @author hulk */
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值