自学内容网 自学内容网

【java】java入门

盘符名称+冒号---------盘符切换

dir---------------查看当前路径下的内容

cd目录--------进入单级目录

cd..----------回退到上一级目录

cd \----------回退到盘符目录

cls----------清屏

exit

为什么要配环境变量?

在任意的目录下都可以打开指定的软件。把软件的路径配置到环境变量中

基础语法

public class Helloword{
    public static void main(String[] arg{
        System.out.println("HelloWorld");    
}

命令行窗口,找到代码所在的文件目录

javac HelloWorld.java

编译,会在该文件夹下产生HelloWorld.class(字节码文件)

java HelloWorld

运行,当前目录下的HelloWorld.class这个文件,在运行时候不加后缀名

注释和关键字

注释

public class HelloWorld{
    public static void main(String[] args){
        //输出HelloWorld
        System.out.println("HelloWorld");
        //求数组中的最大值
        int [] arr = {10,20,50,70,200,90};
        int max = arr[0];
        for (int i = 0;i<arr.length;i++){
            if(arr[i]>max){
                max=arr[i];
            }
        }
        System.out.println(max);
    }
}

单行注释

多行注释

文档注释

关键字

被java赋予了特定涵义的英文单词

特点:

关键字的字母全部小写

常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观

class

创建/定义一个类

字面量

告诉程序员:数据在程序中的书写格式

字面量类型:

  • 整数类型
  • 小数类型
  • 字符串类型

用双引号括起来的内容

  • 字符类型

用单引号括起来的,内容只能有一个

'A'   '0'   '我'

  • 布尔类型

布尔值,表示真假    只有两个值:true、false

  • 空类型

一个特殊的值,空值         值是:null

\t制表符

在打印的时候,把前面字符串的长度补齐到8位,或8的整数倍。最少补一个空格,最多补8个空格

null空类型不能直接打印

变量

数据类型 变量名 = 数据值;

只能存一个值

变量名不允许重复定义

一条语句可以定义多个变量

变量在使用之前一定要进行赋值

变量的作用域范围

二进制:由0和1组成,代码中以0b开头

十进制:由0~9组成,前面不加任何前缀

八进制:由0~7组成,代码中以0开头

十六进制:由0~9还有a~f组成,代码中以0x开头

数据类型

基本数据类型

数据类型关键字取指范围内存占用
整数

byte

short

int(默认)

long

-128~127

-32768~32767

-2147483648~2147483647(10位数)
-9223372036854775808~9223372036854775807(19位数)

1

2

4

8

浮点数

float

double(默认)

-3.40129e-38 ~ 3.402823e+38

-4.9000000e-324 ~ 1.797693e+308

4

8

字符char0~655352
布尔booleantrue、false

1

注意:如果要定义long类型的变量,在数据值的后面需要加一个L作为后缀

byte 取值范围

double>float>long>int>short>byte

long类型变量:需要加入L标识

float类型变量:需要加入F标识

public class ValueDemo1{
public static void main(String[] args){
String name="谢广坤";
int age=18;
char gender='男';
double height=180.1;
boolean flag=true;
System.out.println(name);
System.out.println(age);
System.out.println(gender);
System.out.println(height);
System.out.println(flag);
    }
}

标识符

给类、方法、变量等起的名字

由数字、字母、下划线_和美元符$

不能以数字开头、

不能是关键字

区分大小写

小驼峰命名法:方法、变量

规范1:标识符是一个单词的时候,全部小写
name

规范2:标识符由多个单词组成的时候,第一个单词首字母小写,其他单词首字母大写

firstName

大驼峰命名法:类名

规范1:标识符是一个单词的时候,首字母大写

Student

规范2:标识符由多个单词组成的时候,每个单词的首字母大写

GoodStudent

键盘录入

Scanner

导包--Scanner这个类在哪

import java.util.Scanner;      

创建对象--表示我要开始用Scanner这个类了

Scanner sc = new Scanner(System.in);

接收数据

int i = sc.nextInt();

import java.util.Scanner;
public class ScannerDemo1{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);

System.out.println("请输入整数");
int i = sc.nextInt();
System.out.println(i);
}

}

键盘输入数字并求和

键盘录入两个两个整数,求出它们的和并打印出来

import java.util.Scanner;
public class ScannerTest{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);

System.out.println("请输入第一个数字");
int number1 = sc.nextInt();
System.out.println("请输入第二个数字");
int number2=sc.nextInt();

System.out.println(number1+number2);
}

}

IDEA

IntelliJ IDEA,用于Java语言开发的集成环境

IDEA项目结构介绍

project(项目)

        module(模块)

                package(包)

                        class(类)

在本地打开这个文件夹

快速生成main方法--psvm

输出语句---sout

运行

MarsCode
根据注释生成代码

修改bug

点击#,选择要修改的文件

设置字体

自动导包

自动提示,忽略大小写

Match case

IDEA的项目和模块操作

IDEA中类相关操作

新建类

右键包,New,Java Class

修改类名

右键,Refactor,Rename

删除类

右键,delete

IDEA中模块相关操作

新建模块

File,Project Structure,Model,点击+,New Model,选择Java,起名

删除模块

修改模块

导入模块

IDEA中项目相关操作

关闭项目

File,Close Project

新建项目

New Project,Empty Project,

打开项目

修改项目

运算符

对字面量或者变量进行操作的符号

表达式

用运算符把字面量或者变量链接起来,符合java语法的式子

算术运算符

加+、减-、乘*、除/、取模%

在代码中,如果有小数参与计算,结果有可能是不精确的

package com.yufei.demo1;

public class demo1 {
    public static void main(String[] args) {
        System.out.println(10/3);
        System.out.println(10.0/3);

    }
}

键盘录入一个三位数,将其拆分为个位、十位、百位后,打印在控制台

package com.yufei.demo1;

import java.util.Scanner;

public class demo1 {
    public static void main(String[] args) {
      
        Scanner sc=new Scanner(System.in);
        int num=sc.nextInt();
        int a=num%10;
        int b=num/10%10;
        int c=num/100%10;
        /*
        int b=(num%100-a)/10;
        int c=(num%1000-num%100)/100;
        */

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
    }
}

“+”操作的三种情况
数字相加
public class demo2 {
    public static void main(String[] args) {
        int a=10;
        double b=12.3;
        double e=20.0;
        double c=a+b;
        double f=a+b;
        System.out.println(c);
        System.out.println(e);
    }
}

数字进行运算时,数据类型不一样不能运算,需要转成一样的,才能运算

类型转换分类:

隐式转换(自动类型提升)(取值范围小的-->取指范围大的)

隐式转换的两种提升规则:

(1)取值范围小的,和取值范围大的进行运算,小的会先提升为大的,在进行运算

(2)byte short char三种类型的数据在运算的时候,都会直接先提升为int,然后再进行运算

package com.yufei.demo1;

public class demo2 {
    public static void main(String[] args) {
        int a=10;
        double b=12.3;
        double c=a+b;
        System.out.println(c);
        
        byte e=10;
        byte f=20;
        int d=e+f;
        System.out.println(d);

    }
}


 

强制转换(取值范围大的-->取指范围小的)

byte最大才127,此时数据会发生错误

package com.yufei.demo1;

public class demo3 {
    public static void main(String[] args) {
        byte b1=10;
        byte b2=20;
        byte result=(byte)(b1+b2);
        System.out.println(result);
    }
}
public class demo3 {
    public static void main(String[] args) {
        byte b1=100;
        byte b2=100;
        byte result=(byte)(b1+b2);
        System.out.println(result);//结果就发生错误了,因为要转换的数据过大
    }
}
字符串相加

当“+”操作中出现字符串时,这个“+”是字符串连接符,而不是算术运算符了。

会将前后的数据进行拼接,并产生一个新的字符串。

“123”+123                         “123123”

连续进行“+”操作时,从左到右逐个进行

System.out.println(3.7+"abc"); //"3.7abc"
System.out.println("abc"+true); //"abctrue"
System.out.println("中"+"abc"+true); //"中abctrue"

int age=18;
System.out.println("我的年龄是"+age+"岁"); //"我的年龄是18岁"
System.out.println("我的年龄是"+"age"+"岁"); //"我的年龄是age岁"

System.out.println(1+2+"abc"+2+1); //"3abc21"

数值拆分

package com.yufei.demo1;

import java.util.Scanner;

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

        Scanner sc=new Scanner(System.in);
        System.out.println("请输入一个三位数:");
        int num=sc.nextInt();
        int a=num%10;
        int b=num/10%10;
        int c=num/100%10;
        /*
        int b=(num%100-a)/10;
        int c=(num%1000-num%100)/100;
        */

        //System.out.println(a);
        System.out.println("个位是:"+a);
        //System.out.println(b);
        System.out.println("十位是:"+b);
        //System.out.println(c);
        System.out.println("百位是:"+c);
    }
}
字符相加

字符+字符

字符+数字

会把字符通过ASCII表查询到对应的数字在进行计算

A--65

a--97

public class demo3 {
    public static void main(String[] args) {
       char c='a';
       int result=c+0;
       System.out.println(result);
    }
}

System,out.println(1+'a'); //98
System,out.println('a'+"abc"); //aabc

注意:

/和%的区别:两个数做除法,/取结果的商,%取结果的余数

整数操作只能得到整数,要想要得到小数,必须有浮点数参与运算

自增自减运算符

a++先用后加

++a先加后用

public class demo3 {
    public static void main(String[] args) {
      int x=10;
      int y=x++;    //x=11,y=10
      int z=++x;    //x=12,z=12
        System.out.println("x:"+x);
        System.out.println("y:"+y);
        System.out.println("z:"+z);
    }
}

赋值运算符

=

+=

-=

*=

/=

%=

隐藏了一个强制转换

int a=10;
int b=20;
a+=b;
//a=(int)(a+b);

short s=1;
s+=1;
//s=(short)(s+1);

关系运算符

关系运算符/比较运算符

逻辑运算符

Ctrl+D

赋值本行的内容到下一行

短路逻辑运算符

判断用户名并且判断密码

1.用户名正确,需要判断密码

2.用户名错误,无需判断密码

int a=10;
int b=10;
boolean result = ++a < 5 && ++b < 5;
system.out.println(result);    //false
system.out.println(a);    //11
system.out.println(b);    //10

数字6是一个真正伟大的数字,键盘录入两个整数。

如果其中一个为6,最终结果输出true

如果它们的和为6的倍数,最终结果输出为true

其他情况都是false

a==6  b==6  (a+b)%6==0

public class demo3 {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入第一个整数:");
        int num1 =sc.nextInt();
        System.out.println("请输入第二个整数:");
        int num2=sc.nextInt();
        boolean result= num1==6||num2==6||(num2+num1)%6==0;
        System.out.println(result);
    }
}

三元运算符

运算符优先级


原文地址:https://blog.csdn.net/wuyufei_sun/article/details/143894114

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!