Java基础

个人的学习总结,欢迎指正


前言

Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程,本章开始讲解基本数据类型,


提示:以下是本篇文章正文内容,下面案例可供参考

一、基本数据类型

          

 1.数值型

  见名知意,我们数值型就是与数字有关的一种数值类型,在Java中又将其分为两种类型,分别为整型和浮点型在此我们通过代码讲讲Java中默认数值类型的这件事;


2.字符型

字符型(char)表示一个字符,用单引号括起的单个字符,占两个字节;

char也可以表示数值整数,可表示带符号和无符号的值:

无符号(0~255)

 带符号(-127~128)

在Java中无论是‘字母’‘数字’  ‘符号’,中文,都是占两个字节。在此我们再补充讲解转义字符“\”

public class Zhi {
    public static void main(String[] args) {
        char i='8';
        char j='中';
        char x='\n';//我们说字符型是由单引号括起来的单个字符,但在此\n被看成一个整体,为一个字符。
        System.out.println("aaaa\nbbbbb");
        /*(此为换行符,其作用是使得aaaa输出后换行达到
        aaaa
        bbbbb 的效果
         */
        System.out.println("aaaa\tbbbbb");
        System.out.println("a\tbbbbb");
        System.out.println("aaaaaa\tbbbbb");
        //此为制表符,其作用是使得补充8的倍数个字符位,如后图所示
        System.out.println("aaaaaa\rbbbbb");//”\r“为回车符,意味着回退到开始的位置,就是首个位置
        System.out.println("aaaa\bbbbbb");//在输出完aaaa时‘\b’退格符退格回退了一个a所以出现aaabbbbb
        System.out.println("\"java\"");//括号里面的\使其右边的“原样输出,目的是使其”“不匹配,从而输出”java“
       //                              \'\'也时一样的原样输出单引号
        System.out.println("\\java\\");
    }
}

注意:在字符类型中在没有进行运算时,它会原样输出,但在进行了加减乘除运算后的字符会在底层时进行运算所以,输出的值会发生改变;如下

public class Hhh {
    public static void main(String[]args){

        char num1='A'+2;
        System.out.println(num1);//我们通过Ascll得知A所对应的十进制数为65加2后为67对应的为C,故输出的位C
    }

}

3.布尔型

布尔型(boolean),我们知道boolean是一个判断型的基本数据类型,其输出的不是ture,就是false,也可以用c语言中的它输出‘0’或‘1’来、说明其为什么只占一个位,其一般用于流程控制

public class Boolean {
    public static void main(String[] args) {
        boolean flag=(8<9);
        boolean flag1=true;
        System.out.println(flag);
        System.out.println(flag1);
    }
}

二、进制转换

1.十进制与二进制与八进制与十六进制

十进制转化为二进制采用短除法,除的是二,相应的转化为八进制和十六进制也是一样的。

二进制转化为十进制时对应数字是几那就是它乘与其的几次方如下:

相同的八进制与十六进制也是一样的。。

十进制小数位转换二进制小数位;

十进制小数位乘二,得到的整数为取掉如果乘过一次整数位为零的话,那就取零;

同样的八进制乘八,十六进制乘十六。

注意当问及八进制转化为十六进制的题目时,我们可以先将八进制转化为十进制再转化为十六进制,此外除了自己算以外,计算机本身也提供了程序员专用的计算器。

三、数值类型的强制转换与自动转换

1.自动转换

 我们可以想像int,和double分别为一个箱子,可将赋予的数值看成面包,我们知道int为4字节,double   为8字节故 可以将其看成更大一号的箱子,你想想,把你一个刚适合放在更大一号箱子里的面包·硬塞在小一号的箱子里面,这时候多出来面包就会掉出来,也就是我们所说的数据丢失,所以会出现我们上图的报错的情况。

2.强制转换

强制转换的模板如下:

public class jjj {
    public static void main(String[] args) {
        double i=8.98775;
        int j=(int) 8.98775;//此处为强制将double强制转换为整型。
        long x=798898L;
        int y=(int) x;//此处为强制将long型强制转化为整型。
        System.out.println(y);
        System.out.println(j);
    }
}

强制转换的意义在于将一些数值转化为我们需要的类型。

3.补充

类型级别:

byte<short<int<long<float<double

区分级别的作用是,当一个表达式中有多种数据类型时,要找出最高级别的数值类型,然后其余的类型都转化为最高类型进行计算。请看如下代码,及最后输出的数值。

public class jjj {
    public static void main(String[] args) {
        int i=1;
        long j=2;
        float x=1.4F;
        double y=1.0;
        System.out.println(i+j+x+y);
    }
}

四、final与Scannner

1.final

final 将一个变量变成一个常量,也就是我们常说的字符常量,一个字符被定义为了一个常量(所定义的变量要大写)如下代码所示:

2. Scanner

我们目前可将Scanner形象的认为是一个上有个扫描器,它会获取我们从键盘中输入的值。

import java.util.Scanner;

public class men {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        System.out.print("姓名:");
        String name=input.next();
        System.out.print("性别:");
        char sex=input.next().charAt(0);
        System.out.print("年龄:");
        int age= input.nextInt();
        System.out.print("身高:");
        double height= input.nextDouble();
    }
}

补充:

我们的Scanner可以输入int  double  和String型但不能输入char型,但可以和上述代码一样输入的虽然是字符串型但在后面加charAt(字符位置),可以获得位与字符串某个位置上的字符。


总结

无论学习何种语言我们都要夯实基础,注意基础学习,今后才可以避免出现错误。

“九层之台起于累土,千里之行始于足下”

“千里之堤溃于蚁穴”

欢迎指正         (----------)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值