欢迎光临
感谢一路有你

Java入门基础整理(一)

如果你对该文章中的内容有疑问/不解,可以点击此处链接提问
要注明问题和此文章链接地址 点击此处跳转
 

hello

执行 javac Hello.java 生成 Hello.class


<code class="">// Hello 要与文件名相同
public class Hello{
    // 程序执行的起点
    public static void main(String[] args){
        System.out.print("Hello world");
    }
}
</code>

数据类型


<code>1.基本类型
    整数型 byte short  int long
    浮点型float double
    字符 char
    布尔boolean
2.引用数据类型
字符串 数组 类 接口
</code>

关键字/标识符/常量


<code class="">关键字

标识符
    不使用数字开头 

常量 
    字符串常量   双引号   'aaaaa'
    整数常量
    浮点数常量
    字符常量  单引号引起来的 只能有一个  'a'   'b'
    布尔常量  true false
    空常量  null
</code>

变量

  • 变量名称不能重复
  • float和long类型变量 F L 不能丢
  • byte short 数值不能超过范围
  • 没有赋值的变量不能直接使用
  • 变量使用不能超过作用域范围
    
    <code class="">public class Bianliang{
     public static void main(String[] args) {
         int num1,num2;
        //  int num1=1,num2=2;
         num1 =10;
         num2 = num1 +10;
         System.out.println(num2);

         System.out.println("-----------");

         byte num3 = 30;
         System.out.println(num3);
         short num4 = 10;
         System.out.println(num4);
         long num5 = 20000;
         System.out.println(num5);

         float num6 = 2.5F;
         System.out.println(num6);

         double num7 = 2.5F;
         System.out.println(num7);

         char zf1 = 'A';
         System.out.println(zf1);

         boolean var1 =true;
         System.out.println(var1);
     }
    }
    </code>

类型

自动转换
* 从小->大

强制转换

int num=(int)100L;
(要转换的类型)范围大的数据

  • 注意:
    强制使用不推荐使用

运算符


<code class="">加减乘除取余
+
-
*
/
%

自增自减
++   --

赋值运算符
=
+=
-=
*=
/=
%=

比较运算符
==
&lt;
&gt;
&lt;=
&gt; =
! =

逻辑运算符
&amp;&amp; 与
|| 或
!  非

三元运算符
数据类型 变量名称=条件判断?表达式a:表达式b

</code>

方法


<code class="">public static void 方法名称(){

}

</code>

<code class="">public class Fangfa{
    public static void main(String[] args) {
        //调用方法
        farmer();
    }
    // 定义方法
    public static void farmer(){
        System.out.println("111");
        System.out.println("222");
        System.out.println("333");
    }
    public static void coo(){
        System.out.println("cook");
        System.out.println("321");
        System.out.println("123");
    }
}
</code>

流程(if/switch/for/while)


<code class="">if(表达式){
}else{
}

if(表达式){
}else if(表达式){
}else{
}

switch(表达式){
    case 常量值:
        语句体;
        break;
    default:
        语句体;
        break;
}

for(;;){
}

while(条件判断){
}

do{
}while(条件判断);

</code>

方法调用

方法调用:
1. 单独调用
2. 打印调用
3. 赋值调用

重载


<code class="">    名称相同,
        1. 参数列表不同
        2. 参数类型不同
</code>

<code class="">public class Fangfa0111{
    public static void main(String[] args) {
        int a=1;
        int b=2;
        System.out.println("-----");
        System.out.println(summ(a, b));//两数相加
        System.out.println(sum_lian(100));//1-某数的之和
        get_num_hello(5);
    }

    public static int summ(int a,int b){
        int c = a+b;
        return c;
    }
    public static int sum_lian(int a){
        int c=0;
        for(int i=0;i&lt;=a;i++){
            c = c+i;
        }
        return c;
    }
    public static void get_num_hello(int a){
        for(int i=1;i&lt;=a;i++){
            System.out.println("Hello");//1-某数的之和
        }
    }


    // 重载(名称相同,参数列表不同)
    public static int cz_sum(int a,int b){
        int c = a+b;
        return c;
    }
    public static int cz_sum(int a,int b,int c){
        int dd = a+b+c;
        return dd;
    }
    public static int cz_sum(int a,int b,int c,int d){
        int dd = a+b+c+d;
        return dd;
    }

}
</code>

数组arr

  1. 是一种引用数据类型
  2. 数组中的多个数据,类型必须统一
  3. 数组长度不可改变

    初始化

  4. 动态初始化(指定长度)
  5. 静态初始化(指定内容)

数据类型[] 数组名称 = new 数据类型[数据长度]


<code class="">public class Arr{
    public static void main(String[] args) {

        // 动态初始化
        int[] arrayA = new int[300];
        double[] arrayB = new double[10];
        String[] arrayC = new String[5];
        //静态初始化
        int[] arrayD = new int[] {1,2,4,5,6,7};
        int[] arrayE = {1,2,4,5,6,7};
        //读取
        System.out.println(arrayE[1]);
        //赋值
        arrayA[1] = 50;
        System.out.println(arrayA[5]);//默认0  ''  0.0
        System.out.println(arrayA[1]);//50
        //获取长度
        System.out.println(arrayD.length);
        //数组遍历
        for(int i=0;i&lt;=arrayD.length;i++){
            System.out.println(arrayD[i]);
        }
        //数组的最值
        //数组反转(使用第三方)
    }
    public static void get_sum(int[] arrayA){

    }
}
</code>

object

导入包
import 包名称.类名称
如果同目录下不用写
Student stu = new Student()
stu.a
stu.a()


<code class=""><br />public class Obj{
    public static void main(String[] args) {
        int[] arrayD = new int[] {1,2,4,5,6,7};
        // System.out.println(arrayD.toString());
        Student stu = new Student();
        stu.aa();
        System.out.println(stu.bb);
    }
}
</code>

random

random 随机数
int r = rand.nextInt();////随机生成正负
int r2 = rand.nextInt(10);//0-9


<code class="">public class Random1{
    public static void main(String[] args) {

        // 生成随机数()
        Random rand = new Random();
        int r = rand.nextInt();
        System.out.println("随机数是:"+r);
        int r2 = rand.nextInt(10);
        System.out.println("随机数是:"+r2);//0-9
    }
}
</code>

scanner

键盘输入

1.导包
import
2.创建

3.使用


<code class="">import java.util.Scanner;
public class Scann{
    public static void main(String[] args) {
        String str = "dsds";

        //创建
        Scanner sc = new Scanner(System.in);

        //使用
        //获取键盘输入数据
        // int num = sc.nextInt();
        // System.out.println(num);


        //求两个数的和
        System.out.print("请输入num1:");
        int num1 = sc.nextInt();
        System.out.print("请输入num2:");
        int num2 = sc.nextInt();
        int c = num1+num2;
        System.out.println(c);
    }
}
</code>

arraylist idea


<code class="">import zf.com.Student;
import  java.util.ArrayList;
/**
 arraylist 使用
 1. 自定义学生类
 2. 创建集合 ,用来存学生对象
 3. 根据类创建4个学生对象
 4.将4个学生对象加到  add
 5.遍历集合 for size  get
 */
public class Arraylist_demo {
    public static void main(String[] args) {
        ArrayList&lt;Student&gt; list = new ArrayList&lt;Student&gt; ();

        Student one = new Student("a",20);
        Student two = new Student("b",22);
        Student three = new Student("c",24);
        Student four = new Student("d",25);

        list.add(one);
        list.add(two);
        list.add(three);
        list.add(four);

        for (int i = 0; i &lt; list.size(); i++){

            Student stu = list.get(i);
            System.out.println("姓名:"+stu.getName()+",年龄:"+stu.getAge());
        }
    }
}

</code>

<code class=""><br />import  java.util.ArrayList;

/**
Arraylist

 System.out.println(list);//[aa, bb, cc]
 printList(list);//{aa@bb@cc}

 */

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

        ArrayList&lt;String&gt; list = new ArrayList&lt;String&gt; ();

        list.add("aa");
        list.add("bb");
        list.add("cc");
        System.out.println(list);//[aa, bb, cc]

        printList(list);//{aa@bb@cc}
    }
    /**
     定义方法三要素
     1.返回值名称
     2.方法名称
     参数列表
     */
    public static void printList(ArrayList&lt;String&gt; list){
        System.out.print("{");
        for (int i = 0; i &lt; list.size(); i++){
            String name = list.get(i);
            if(i==list.size()-1){
                System.out.print(name);
                System.out.print("}");
                break;
            }
            System.out.print(name+"@");
        }
    }

}

</code>

<code class=""><br />import  java.util.Random;
import  java.util.ArrayList;
/**
一个大集合存入20个随机数字,筛选其中偶数元素,
 放入小集合中

 */

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

        ArrayList&lt;Integer&gt; list = new ArrayList&lt;Integer&gt; ();
        Random r = new Random();
        for (int i = 0; i &lt; 20; i++) {
            list.add(r.nextInt(100+1));
        }

        ArrayList&lt;Integer&gt; smallList = getsmalllist(list);
        System.out.println(smallList);
        System.out.println(smallList.size());

    }

    /**
     * 接受大集合,返回小集合
     */
    public static ArrayList&lt;Integer&gt; getsmalllist(ArrayList&lt;Integer&gt; biglist){
        ArrayList&lt;Integer&gt; smalllist = new ArrayList&lt;Integer&gt; ();
        for (int i = 0; i &lt; biglist.size(); i++) {
            int num = biglist.get(i);
            if (num %2==0){
                smalllist.add(num);
            }
        }

        return smalllist;
    }
}

</code>

<code class="">import zf.com.Person;

import java.util.ArrayList;

/**
定义一个数组,用来存储3个Person对象

 数组缺点:一旦创建,长度不可改变

 ArrayList 集合
 ArrayList&lt;Integer&gt; list = new ArrayList&lt;Integer&gt; ();
    &lt;&gt; 泛型  定义数据的类型
    长度可随意改变
    ArrayList 打印,直接是值
    向集合中加数据 .add
    获取数据      .get
    删除          .remove
    获取长度        .size()

 */
public class Arraylist_person {
    public static void main(String[] args) {
        Person[] array = new Person[3];

        Person one = new Person("'迪丽热巴'",18);
        Person two = new Person("'鹿晗'",23);
        Person three = new Person("'陈赫'",22);

        array[0] = one;
        array[1] = two;
        array[2] = three;

        System.out.println(array[0]);//地址值
        System.out.println(array[1]);
        System.out.println(array[2]);

        System.out.println(array[0].getName());//'迪丽热巴'

        ArrayList&lt;String&gt; list2 = new ArrayList&lt;&gt; ();
        list2.add("aa");
        list2.add("bb");
        list2.add("cc");
        System.out.println(list2);
    }
}

</code>

<code class="">import java.util.Scanner;

/**
 输入一个字符串,统计各种字符串出现的次数
 1. 输入Scanner
 2.键盘输入的字符串   String str = sc.next()
 3.定义四个变量,用来代表各种字符穿心的次数
 4.对字符串一个个进行检查 String-&gt;char[]  方法: toCharArray()
 5.遍历char[] 进行判断
 6.打印出现的次数
 */
public class Scanner_test {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个字符串");
        String input = sc.next();
        int dx = 0;
        int xx = 0;
        int sz = 0;
        int qt = 0;

        char[] charArray= input.toCharArray();
        for (int i = 0; i &lt;charArray.length; i++ ){
            char c =charArray[i];
            if ('A'&lt;=c &amp;&amp; c&lt;='Z' ){
                dx++;
            }else if ('a'&lt;=c &amp;&amp; c&lt;='z'){
                xx++;
            }else if ('0'&lt;=c &amp;&amp; c&lt;='9'){
                sz++;
            }else {
                qt++;
            }
        }
        System.out.println("大写字母有:"+dx);
        System.out.println("小写字母有:"+xx);
        System.out.println("数字有:"+sz);
        System.out.println("其他有:"+qt);

    }


}
</code>

static


<code class="">import zf.com.Static_t;

import java.util.Arrays;

/**
 * Arrays工具类
 Arrays.sort(arr1);  排序
 toString(数组)   数组-&gt;字符
 sort               排序 (小到大)

 */
public class Static_demo {
    public static void main(String[] args) {
        Static_t a = new Static_t();
        Static_t b = new Static_t();

        String str = "sdijsncdkncksdmco324";
        char[] arr1 = str.toCharArray();
        Arrays.sort(arr1);
        for (int i = 0; i &lt; arr1.length; i++) {
            System.out.println(arr1[i]);
        }
    }
}

</code>

string


<code class="">/**
String字符串类
 equals 比较
 equalsIgnoreCase  比较  忽略大小写

 length 长度
 concat 拼接字符串相当于+

 charAt 获取指定索引位置的单字符
 indexof   字符串首次出现的位置
 substring       截取

 tocharArray()  字符串改为字节数组
 getBytes()     当前字符串底层的字节数组
 replace        替换

 split          切割 字符串-&gt;数组
                数组-&gt;字符串

 */

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

        String a = "Hello";
        String b = "Hello";
        String c = "hello";
        String d = "hello,asasakndsknd,k4ji2o3n435no4n532o532";
        System.out.println(a.equals(b));//true
        System.out.println(a.equals(c));//false
        System.out.println(a.equalsIgnoreCase(c));//true 忽略大小写
        System.out.println(a.length());

        System.out.println(a.concat("'aaaa'"));//Hello'aaaa'
        System.out.println(a.charAt(2));//l
        System.out.println(a.indexOf("o"));//4
        System.out.println(d.substring(5));// asasakndskndk4ji2o3n435no4n532o532
        System.out.println(d.substring(5,10));// asas

//        cahr[] aa = d.toCharArray();
        String dd =  d.replace("hello","mc");
        System.out.println(dd);

        System.out.println("-----");
        String[] arr1 = d.split(",");
        System.out.println(arr1.length);
        System.out.println(arr1[1]);
    }
}

</code>

面向对象

面向对象
封装/继承/多态
继承
1. 单继承
2. 多级继承


<code class=""><br />public class Demo {
    public static void main(String[] args) {
        Zi zi = new Zi();
        zi.show();
        zi.method();
    }
}
</code>

继承


<code class="">public class Zi  extends Fu{
    int num = 20;

    //重写方法
    @Override
    public void method() {
        super.method();//调用父类的
        System.out.println("子类方法");
    }

    public void show() {
        int num = 30;
        System.out.println(num);//30 当前
        System.out.println(this.num);//20 子类的
        System.out.println(super.num);//10  父类的
    }

}
</code>

Math

Math.abs(double num) 取绝对值
.ceil 向上取整
.floor 向下取整(抹零)
.round 四舍五入
PI 圆周率


<code class="">public class MathTest {
    public static void main(String[] args) {


        double min =-10.8;
        double max =5.9;
        for (int i = (int) min ; i &lt;  max; i++) {
            int abs = Math.abs(i);
            if (abs &gt; 6 || abs &lt; 2.1){
                System.out.println(i);
            }
        }


    }
}
</code>

抽象方法

抽象方法
abstract

抽象类和方法的使用
1. 不能直接创建new抽象对象
2. 必须用一个子类继承父类抽象父类
3.子类覆盖重写父类当中的抽象方法 去掉abstract关键字
4. 创建子类对象进行使用

final 最后赋值


<code class="">public abstract class Chouxiang {

    //抽象方法
    public abstract void eat();


}
</code>

public > protected > default > private

赞(0) 打赏
未经允许不得转载:王明昌博客 » Java入门基础整理(一)
分享到: 更多 (0)

相关推荐

  • 暂无文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

×
订阅图标按钮