慢慢学习,然后惊呆所有人(三.1,java的数据类型方法补充)

Posted 韶光不负

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了慢慢学习,然后惊呆所有人(三.1,java的数据类型方法补充)相关的知识,希望对你有一定的参考价值。

通过对上一篇文章学习,相信大家对Java中8中数据类型已经有一定了解,所以学习数据类型当中的方法是无法避免的,废话不多说,开始读博客吧!

上文补充内容

补充内容
varvar关键字,使用不用指定变量类型(根据变量值给定类型,Java10后版本)
finalfindal关键字,表示常量(只能赋值一次,赋值第二次报错)
SIze枚举类型,SIze只能存储这个类型变量声明给定的的枚举值
length返回数组个数

Math(数学函数)的学习

Math当中的方法
sqrt计算平方根
pow幂次方计算
floorMod取余(解决长期存在的有关整数取余问题)
abs取绝对值
floor向下取整
random随机数,返回在0~1之间
nextDown
负无穷大的方向上返回与指定参数相邻的数字。

演示:

package com.itheima;
public class Test {
    public static void main(String[] args){
        //求平方根
        System.out.println(Math.sqrt(4));
        //幂次方。第二个参数为次幂
        System.out.println(Math.pow(2,3));
        //绝对值
        System.out.println(Math.abs(-90));
        //向下取整
        System.out.println(Math.floor(4.9));
        //取余
        System.out.println(Math.floorMod(5,2));
        //0~1随机数
        System.out.println(Math.random());
        //负无穷大的方向上返回与指定参数相邻的数字。
        System.out.println(Math.nextDown(100));
    }
}

三角函数
sin正弦函数
cos余弦函数
tan正切函数
atan反正切函数
atan2返回以弧度表示的 y/x 的反正切。y 和 x 的值的符号决定了正确的象限。也可以理解为计算复数 x+yi 的辐角,计算时atan2 比 atan 稳定。

演示:

package com.itheima;
public class Test {
    public static void main(String[] args){
        
        System.out.println(Math.sin(30));

        System.out.println(Math.asin(30));

        System.out.println(Math.cos(30));

        System.out.println(Math.acos(30));

        System.out.println(Math.tan(30));

        System.out.println(Math.atan(30));

        System.out.println(Math.atan2(4,5));
    }
}

NaN:未定义或不可表示的值。

对数
exp高等数学里以自然常数e为底的指数函数,它同时又是航模名词,全称Exponential(指数曲线)。
loglog指对数。在数学中,对数是对求幂的逆运算,正如除法是乘法的倒数,
log10以10为低的对数
log1p
log1p的使用就像是将一个数据压缩到了一个区间,与数据的标准化类似
PI内置的圆周率,3.1415926
E内置e,

演示:

package com.itheima;
public class Test {
    public static void main(String[] args){

        System.out.println(Math.exp(2.13));

        System.out.println(Math.log(2));

        System.out.println(Math.log10(3));
        //log1p的使用就像是将一个数据压缩到了一个区间,与数据的标准化类似
        System.out.println(Math.log1p(3));

        System.out.println(Math.PI);

        System.out.println(Math.E);


    }
}

字符串方法

字符串方法
substring截取字符串,第一个参数开始,第二个参数结束)
+二个字符串连接
jion字符串连接,第一个为定界符,后面参数为连接字符串
repeat(n)java11中及以上提供方法,字符串重复n次
equals检查二个字符串是否相等,不要用==判断字符串是否相等
null可以用来判断是不是空字符串
length返回字符串代码单元个数
toLowerCase返回一个新字符串,把大写改成小写
toUpperCase返回一个新字符串,把小写改成大写

演示:

package com.itheima;
public class Test {
    public static void main(String[] args){
        String me="I love You";

        //空格也是一个码点
        System.out.println(me.substring(1,5));
        System.out.println(me+"panada");
        //常用方法
        System.out.println(me.substring(0,6)+"haha");

        System.out.println(me.join("%","hahah","lalalala","dolba"));

        String you="I love You";
        System.out.println(me.equals(you));

        //判断字符串是否为空
        System.out.println(me.length()==0);
        System.out.println(me.equals(" "));


        System.out.println(me.length());

        System.out.println(me.toUpperCase());
        System.out.println(me.toLowerCase());
    }
}

为了方便对短的字符串进行编程,Java有方法加大来编程速度!

StringBuilder
构建一个空字符串对象
append
添加元素
setCharAt
修改下标3的元素,只能修改为类型char
insert
修改下标3的元素,可以为字符串与char类型
delete
删除下标从第一个参数,到第二个参数元素,左闭右开区间
toString
返回一个内容相同的字符串
appendCodePoint
追加码点,将其转换为一个或二个代码单元

package com.itheima;

import java.util.Scanner;

public class Test {
    public static void main(String[] args){
        //构建一个空字符串对象
        StringBuilder builder=new StringBuilder();

        //添加元素
        builder.append("I LOVE YOU");
        System.out.println(builder);

        //追加码点,将其转换为一个或二个代码单元
        builder.appendCodePoint(2);
        System.out.println(builder);

        //修改下标3的元素,只能修改为类型char
        builder.setCharAt(2,'l');
        System.out.println(builder);

        //修改下标3的元素,可以为字符串与char类型
        builder.insert(5,"you");
        System.out.println(builder);

        builder.insert(5,'y');
        System.out.println(builder);

        //删除下标从第一个参数,到第二个参数元素,左闭右开区间
        builder.delete(5,8);
        System.out.println(builder);

        //返回一个内容相同的字符串
        String s=builder.toString();
        System.out.println(s);


    }
}

输入与输出

标准输入流:

读取输入:System.in

想从控制台获取输出,先需要构建一个与”标准输入流“System.in关联的Scanner对象

接输入流方法
nextLine
接可能存在空格
next
接单词
nextInt
接整数
nextDouble
接浮点数
package com.itheima;

import java.util.Scanner;

public class Test {
    public static void main(String[] args){
        //关联控制台
        Scanner sc=new Scanner(System.in);
        //
        System.out.println("你的名字是?");
        String name=sc.nextLine();
        System.out.println("您的性别是?");
        String sex=sc.next();
        System.out.println("您的年龄是?");
        int age=sc.nextInt();
        System.out.println("圆周率是?");
        double pi=sc.nextDouble();
        System.out.println("大家好,我的名字是"+name+"\\n我是个"+sex+"\\n我已经"+age+"岁了\\n"+"圆周率是:"+pi);
    }
}

扩充知识:(密文输入)

Java.io.Console 只能用在标准输入、输出流未被重定向的原始控制台中使用,在 Eclipse 或者其他 IDE 的控制台是用不了的

package com.itheima;

import java.io.Console;
public class Test {
    public static void main(String[] args){
        Console cons=System.console();
        String username =cons.readLine("username:");
        char[] passwd =cons.readPassword("passwd:");
        System.out.println("User name: " + username);
        System.out.println("PassWord: " + String.valueOf(passwd));
    }
}

标准输出流:

标准输出流
println
换行输出
print
将x的类型允许的最大非0数位个数打印出来
printf("%8.2f",x);
"%8.2f"可以自己修改,以8个字符,另外精度1为小数点后2个字符的方式打印,常用在美元,美分数。



public class Test {
    public static void main(String[] args){
        double x=1000/3;

        //换行输出
        System.out.println(x);

        //将x的类型允许的最大非0数位个数打印出来
        System.out.print(x);

        //以8个字符,另外精度1为小数点后2个字符的方式打印,常用在美元,美分数。
        System.out.printf("%8.2f",x);



    }
}

如果博客对你有帮助,不要忘了评论点赞,收藏哦!

以上是关于慢慢学习,然后惊呆所有人(三.1,java的数据类型方法补充)的主要内容,如果未能解决你的问题,请参考以下文章

慢慢学习,然后惊呆所有人(七,抽象类与接口)

慢慢学习,然后惊呆所有人(Arrays类)

慢慢学习,然后惊呆所有人(五 函数的重载)

慢慢学习,然后惊呆所有人(六 , 面向对象,二,构造函数)

慢慢学习,然后惊呆所有人(构造器,this关键字)

慢慢学习,然后惊呆所有人(六 面向对象)