C++快速上手java备战期末考——初识java

文章目录

◆ 博主名称:此生决int

大家好,欢迎来到我的博客~

⭐ 个人专栏:快速复习系列

⭐ 热门专栏:算法基础到精通系列

文章概要

本期是C++快速上手Java的第一期,本期主要介绍一下Java语音的特点------可移植性强,简单介绍了一下Java中的类型以及类型转换与C语音的区别。

初识java

Java是一个面向对象的语音 ,c是面向过程的语音。

最大特点:可移植性非常好,"一次编译,到处运行!"

安装软件:JDK(编译)和IDER(写代码)

如何体现可移植性

Java代码编译后会生成一个字节码文件,存在硬盘,只要有这个文件就可以运行Java代码

第一个Java代码

java 复制代码
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello,world");
}
}

注意:在⼀个源⽂件中只能有⼀个public修饰的类,⽽且源⽂件名字必须与public修饰的类名字相同。

但是,一个 .java 文件:可以有无数个 main 方法(只要在不同类里)
一个类:只能有一个标准入口 main,可以重载但无效

注释

Java多了一个文件注释

Java中的注释主要分为以下三种

• 单⾏注释://注释内容(⽤的最多)

• 多⾏注释:/注释内容 /(不推荐)

• ⽂档注释 :/*⽂档注释/(常⻅于⽅法和类之上描述⽅法和类的作⽤),可以被javadoc⼯具解析,⽣成⼀套以⽹⻚⽂件形式体现的程序说明⽂档

关键字

标识符⭐️

Java除了下划线,**多了一个 $ 字符 **;

【硬性规则】

• 标识符中可以包含:字⺟、数字以及下划线和$符号等等。

• 注意:标识符不能以数字开头,也不能是关键字,且严格区分⼤⼩写。

数据类型和变量⭐️⭐️⭐️⭐️

  • 多了byte少了long long
  • 全都有符号,不存在无符号类型
  • 字节固定(C语音int会随操作系统编译系统32位16位不同而不同)
  • char两个字节,并且取值范围有变,使用Unicode字符集,包含ASCIL
  • bool变成boolean,并且只能用true和false(后面运算符逻辑的关键)
  • Java是强类型语音,也就是等号两边类型必须一样,C是弱类型语音,例如
java 复制代码
float f=12.5;

12.5默认double类型,在Java里面会报错,而C只会报警告 !


每个基本数据类型都有一个类类型,都是各个类型名字首字母大写(除了int,char),可以通过类类型获取各个类型的最大值和最小值等许多操作

java 复制代码
int b=Integer.MAX_VAL;
long c=Long.MAX_VAL;

byte------Byte

short------Short

long------Long

float------Float

double------Double

boolean------Boolean
int------Ieteger
char------Character

类型转换⭐️⭐️⭐️

⾃动类型转换(隐式)

与C一样,小于4字节自动提升为4,(C语音里的整形提升)

范围小转换范围大可以,范围大转换范围小不行,C/c++不会报错,java会报错,必须强转,强转逻辑与C一样

1,混合类型运算 → 全转「最高类型」

2,byte,char,short 小整数运算 → 全转 int

3,把小范围类型赋值给大范围类型

4,三元运算符的自动提升,条件 ? 值1 : 值2 中,两个值类型不同,会自动提升为统一类型:

强制类型转换(显式)

直接加括号

1,赋值时的强制转换,大范围 → 小范围,必须手动强转,否则编译报错(可能丢数据):

java 复制代码
int a = 10;
long b = 100L;
b = a;   // 可以通过编译
 
a = b;   // 编译失败
 
java 复制代码
float f = 3.14F;
double d = 5.12;
d = f;        
     
// float-->double,数据范围由⼩到⼤,隐式转换
 
f = (float)d; // double-->float, 数据范围由⼤到⼩,需要强转,否则编译失败

要注意这种题:(C不会报错)

java 复制代码
byte a = 10;
byte b = 20;
byte c = a + b; // 编译出错,必须强转
byte c=(byte)(a+b);
 //在计算a+b的时候,会被强行提升为整形,所以,左边为byte,右边为int,要强转;
System.out.println(c);

字符串类型⭐️

C没有字符串类型,只有字符型数组,(C++有);Java有,但是不是类类型。与C++一样,重载了+号,可以实现字符串直接相加

其他类型转string

用string.valueof()

java 复制代码
int num = 10;
// ⽅法1 
String str1 = num + "";  
// ⽅法2 
String str2 = String.valueOf(num);
string转其他类型
java 复制代码
String str = "100";
int num = Integer.parseInt(str);

下期预告

OK,今天的博客先分享到这里,下一期我们将一起继续进行Java运算符相关的内容讲解。

结语

**  本文到此结束,欢迎各位在评论区探讨交流。如果你也是学习C++方向但是要应付期末考试,欢迎订阅我的C++快速上手Java应付期末考专栏。**

相关推荐
小羊没烦恼!3 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
倒头就睡的小比特3 天前
算法竞赛C++常用的STL
c++·算法
weilx12343 天前
C++笔记-文件IO-<fcntl.h>
c++
俊昭喜喜里3 天前
java中的继承和多态的区别
java
小羊没烦恼!3 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
譕痕3 天前
JSONObject与JSONArray封装数据格式区别
java·json
胡写代码3 天前
别再前后端各写一套表单校验了
java·后端
小鱼能吃糖3 天前
缺陷修复总览 · mall电商项目:5类缺陷,1个病根,4个业务域
java·电商
此时不提桶,更待何时3 天前
01-06-A-JVM排查实战详解
java·jvm
vipxieliang3 天前
ValidX 在 DDD 领域驱动设计中的实践
java·spring boot