31.【Java (基础入门操作-----数据类型)】(一)

简介: 31.【Java (基础入门操作-----数据类型)】

(一)、包装类

1.为什么要包装类?

(1).首先,Java语言是一个面向对象的语言但是Java中的基本数据类型却是不面向对象的,将每个基本数据类型设计一个对应的类进行代表,这种方式增强了Java面向对象的性质。

(2).其次,如果仅仅有基本数据类型,那么在实际使用时将存在很多的不便,很多地方都需要使用对象而不是基本数据类型。比如,在集合类中,我们是无法将int 、double等类型放进去的,因为集合的容器要求元素是Object类型。而包装类型的存在使得向集合中传入数值成为可能,包装类的存在弥补了基本数据类型的不足

(3).此外,包装类还为基本类型添加了属性和方法,丰富了基本类型的操作。如当我们想知道int取值范围的最小值,我们需要通过运算,如下面所示,但是有了包装类,我们可以直接使用Integer.MAX_VALUE即可。

2.包装类的2种主要用途

1.java中的数据类型int,double等不是对象,无法通过向上转型获取到Object提供的方法,而像String却可以,只因为String是一个对象而不是一个类型基本数据类型由于这样的特性,导致无法参与转型,泛型,反射等过程。为了弥补这个缺陷,java提供了包装类。

作为 和基本数据类型对应的类, 包装类存在,方便涉及到对象的操作。

包含每种基本数据类型的相关属性如最大值、最小值等,以及相关的操作方法。

3.为什么要保留基本数据类型?

我们都知道在Java语言中,用new关键字创建的对象是存储在堆里的,我们通过栈中的引用来使用这些对象,所以,对象本身来说是比较消耗资源的。对于经常用到的类型,如int等,如果我们每次使用这种变量的时候都需要new一个对象的话,就会比较笨重了。所以,Java提供了基本数据类型,这种数据的变量不需要使用new在堆上创建,而是直接在栈内存中存储,因此会更加高效

(二)、Java的基本格式:

固定格式:

public class 文件名 
{
  public static void main(String []avgs){
  }
};

(三)、Java的输入输出:

1.输出问题:

格式:         System.out.println();
代码展示:
public class one
{
  public static void main(String []avgs)      //切记是大写
  {
    int a=3;
    //系统 调用输出 调用打印
    System.out.println("通过电脑屏幕打印出来的数据为:\n");
    System.out.println(a);
}
}       //这里没有分号
效果展示:

2.输入问题

1.     引入工具包: import java.util.Scanner;
     2.     声明工具包:Scanner sc=new Scanner(System.in);
   3. ==========================================================
      使用工具包:  i=sc.nextInt();    //输入整形
      使用工具包      j=sc.nextFloat();   //输入浮点型
      使用工具包     k=sc.nextDouble();    /输入double型
      使用工具包    s=sc.next();        //输入字符串  String
    使用工具包     c=sc.next().charAt(0);      //输入字符char
  4.  以上方法遇到空格 制表符\t 回车.  这些符号后数据就不会被接受了.===================
    使用工具包    s=sc.nextLine()    //接受字符串
  6.  这个方法只有遇到回车才会结束
代码展示:
//    引入工具包
import java.util.Scanner;
public class one
{
    public static void main(String []avgs)
    {
      //声明工具包
      Scanner sc=new Scanner(System.in);
      System.out.println("请您输入您要输入一个整形的数据:");
      int i;
      //使用工具包
      i=sc.nextInt();        //仔细看  nextInt();
      System.out.println(i);
      float j;
      System.out.println("请您输入一个浮点型数据:\n");
      //使用工具包
      j=sc.nextFloat();      // 仔细看   nextFloat  
      System.out.println(j);
      double k;
      System.out.println("请输入一个double型的数据:\n");
      //使用工具包
      k=sc.nextDouble();
      System.out.println(k);
      System.out.println("请输入一个字符串:\n");
      String s;
      //使用工具包
      s=sc.next();
      System.out.println(s);
      System.out.println("请输入一个字符\n:");
      char c;
      //使用工具包
      c=sc.next().charAt(0);
      System.out.println(c);
    }
}
效果展示:

第一套体系:输入的时候用空格分开:

(因为第一个数据接受了 1和空格,那么内存里面还有一个2,所以自动分配给了第二个接收数据.)

第二套体系:

遇到空格不会停止,只有遇到回车的时候才有问题

两个体系混用的时候(空格)

两个体系混用,回车

(三)、运算符的规则:

小空间的转化成大空间的 比如说 1L的水到进4L杯子是可行的.

运算的取值大小:

bety<short<int<long<float<double

byte short char 在运算前首先要转换成int .

(四)、 + 起到链接字符串和运算的作用

代码展示:
public class one
{
  public static void main(String []avgs)
  {   
    System.out.println("123"+123);
    System.out.println(1+2+"黑马程序");
    System.out.println('a'+3);  
  }
}
效果展示:

(五)、逻辑运算符

1.逻辑或

|       一个为真全部为真

2.逻辑非

!     真为假,假为真.

3.逻辑且

&       一个为假全部为假

4.逻辑异或

^         两边一样为假  两边不一样为真                (民政局)

5.短路且

&&       一个为假全部为假         (区别在于只要第一个是个确定的,
                          第二个我可以不看)


相关文章
|
2月前
|
存储 Oracle Java
java零基础学习者入门课程
本课程为Java零基础入门教程,涵盖环境搭建、变量、运算符、条件循环、数组及面向对象基础,每讲配示例代码与实践建议,助你循序渐进掌握核心知识,轻松迈入Java编程世界。
312 0
|
2月前
|
存储 Java Go
【Java】(3)8种基本数据类型的分析、数据类型转换规则、转义字符的列举
牢记类型转换规则在脑海中将编译和运行两个阶段分开,这是两个不同的阶段,不要弄混!
204 2
|
2月前
|
Java Go 开发工具
【Java】(2)Java数据类型阐述、基本数据类型的占用和范围、二进制的讲述
数据的一种表示形式。十进制表示满十进一原则。二进制表示满二进一原则。例如:十进制例如:二进制计算机在任何情况下都只能识别二进制。
137 0
|
3月前
|
Java
java入门代码示例
本文介绍Java入门基础,包含Hello World、变量类型、条件判断、循环及方法定义等核心语法示例,帮助初学者快速掌握Java编程基本结构与逻辑。
417 0
|
3月前
|
安全 Java
使用Java多态性进行数据类型转换
以上示范了如何通过多态性来执行安全有效地对于Java对象间相互之间进行正确方式与场合下正确格式与条件限定内对于各个层级关系内部成员及其功能调取与应有操作处理过程,并通过 `instanceof`关键字确保了程序运行期间遵循逻辑合理并符合预设规则条件限定内正常工作流程而无需担忧潜藏风险问题出现可能带来影响结果质量问题情况存在可能。
162 12
|
3月前
|
Java API 数据库
2025 年最新 Java 实操学习路线,从入门到高级应用详细指南
2025年Java最新实操学习路线,涵盖从环境搭建到微服务、容器化部署的全流程实战内容,助你掌握Java 21核心特性、Spring Boot 3.2开发、云原生与微服务架构,提升企业级项目开发能力,适合从入门到高级应用的学习需求。
711 0
|
3月前
|
前端开发 Java 数据库连接
帮助新手快速上手的 JAVA 学习路线最详细版涵盖从入门到进阶的 JAVA 学习路线
本Java学习路线涵盖从基础语法、面向对象、异常处理到高级框架、微服务、JVM调优等内容,适合新手入门到进阶,助力掌握企业级开发技能,快速成为合格Java开发者。
557 3
|
3月前
|
监控 Java API
2025 年全新出炉的 Java 学习路线:从入门起步到实操精通的详细指南
2025年Java学习路线与实操指南,涵盖Java 21核心特性、虚拟线程、Spring Boot 3、微服务、Spring Security、容器化部署等前沿技术,助你从入门到企业级开发进阶。
807 0
|
4月前
|
NoSQL Java 关系型数据库
Java 从入门到进阶完整学习路线图规划与实战开发最佳实践指南
本文为Java开发者提供从入门到进阶的完整学习路线图,涵盖基础语法、面向对象、数据结构与算法、并发编程、JVM调优、主流框架(如Spring Boot)、数据库操作(MySQL、Redis)、微服务架构及云原生开发等内容,并结合实战案例与最佳实践,助力高效掌握Java核心技术。
418 1
|
4月前
|
Java 测试技术 API
Java IO流(二):文件操作与NIO入门
本文详解Java NIO与传统IO的区别与优势,涵盖Path、Files类、Channel、Buffer、Selector等核心概念,深入讲解文件操作、目录遍历、NIO实战及性能优化技巧,适合处理大文件与高并发场景,助力高效IO编程与面试准备。