Java基础

以下用一个类目为"Main"的简单Java代码作为基本框架示范(结果为输出“Hello World!”后换行)。

public class Main{
    public static void main(String[] args)
    {
           System.out.println("Hello World!");
    }
}

public修饰的类目必须和文件名一致,代码的类名为"Main",源文件也必须取名为Main.java。而一个源文件中,可以含有多个类,但只能含有一个public类。编译后可通过Java虚拟机(JVM)运行的文件名为Main.class。

注:main、String并不触犯Java变量命名规则,为合法变量名

Java作为强类型语言,有哪些数据类型:

Java中的数据类型

        ·基本数据类型

                ·整型

                ·浮点型

                ·布尔型

                ·字符型

        ·引用数据类型(字符串等)

整型

注意:int为整数的默认类型,如需为long类型赋值较大整数时,需要在值的后面追加'L'

浮点型

注意:double为浮点数的默认类型,如需为float类型赋值时,需要在值的后面追加’F‘或’f‘

布尔型

字符型

String(字符串)

Java的自动类型提升(自动类型转换)

·按照 double>float>long>int 的优先级顺序,转换成优先级大的数据类型

·均为short或byte,计算结果仍提升为String

特殊(System.out.print()中常用):

·任何类型与String相加(+)时,执行拼接操作,其结果自动提升为String

Java的强制类型转换

1.整数长度足够,数据完整(数据原封不动)

int i; byte b = (byte) i;    //b=100

2,整数长度不够,数据截断(int转byte等类似转换时注意)

int i = 10000; byte b = (byte) i;    //b=16(符号位变化,可能变为负数)

3.小数位强转整数,数据截断

double d = 2.5; int i = (int) d;    //i=2(小数位舍掉)

4.字符整数互换,数据完整

char c = 65; int i = c;    //i=65

5.boolean的取值为true/false,不可与其他类型转换

高数极限思想在Java的应用

//System.out.println("5/0="+5/0);    //该代码会抛出异常
System.out.println("5.0/0="+5.0/0);  //infinite--无限大
System.out.println("0.0/0="+0.0/0);  //NaN--not a number

解析:

因为0不能作为除数,因此第一行被注释掉的代码运行将会抛异常(#注意‘/'运算后不能跟值为0的量)

浮点型一直是一个不确定的数据类型,当0转为浮点型后(#浮点型为0的判断要在某两个极小的数之间,而不是用"=="的逻辑运算符),它可能在小数点后无数个位置后有值,即它的实际数值为无穷小,"常量/无穷小"结果就是无穷大。

同理,第三行代码中"0.0/0"即无穷小比无穷小,即未定型,Java无法给出这个数

Java中逻辑运算符的短路与('&&')、位与('&')

首先定义并赋值两个变量作为例子:

int a = 18, b = 10;

短路与(&&)

//例1
System.out.println(a>b && b++==10);
System.out.println(b);
/*输出:
true
11
*/

前逻辑表达式正确时才会进行后面的判断

//例2
System.out.println(a<b && b++==10);
System.out.println(b);
/*输出:
false
10
*/

当前逻辑表达式错误,直接跳出该语句,不执行后逻辑表达式

位与(&)

//例3
System.out.println(a<b & b++==10);
System.out.println(b);
/*输出:
false
11
*/

即使前面逻辑表达式结果为false仍会执行后面的逻辑表达式

在Java中,或也有短路或"||"和位或“|”,但是它们的差别目前在语句中实在是想不出来,可能与二进制的运算有关(详细部分目前没学过)。

Java在控制台的输入

(使用顺序)

1.导入java.util.Scanner(或java.util.*导入util中的全部类)

2.声明Scanner类型的变量

3.使用Scanner类中对应的方法(区分类型):

          ·nextInt();              //获得整数

          ·nextDouble();      //获得小数

          ·next();                 //获得字符串

          ·next().charAt(0); //获得单个字符

注:如果输入了不匹配的数据,则会产生 java.util.InputMismatchException

(程序示例)

import java.util.Scanner;//1.导包
public class Main{
    public static void main(String[] args)
    {
        //2.定义扫描仪
        Scanner sc = new Scanner(System.in);
        //3.使用字符型去接受输入
        char ac = sc.next().charAt(0);
        //4.使用变量
        System.out.println(ac);
    }
}

其中System.in指控制台的输入。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值