java代码中文_使用中文编写Java代码

额?what?

在B站无意中看到一张图,无意间已发了自己的好奇,实际上我早就知道Java支持Unicode编码也就是可以使用中文命名规则,但是我们可以包装一下,玩一玩完全使用中文编码也未尝不可,但是经过尝试,比较困难,Java不支持运算符重载,也没有办法定义

define 所以很大程度上限制了我们使用Java开发一款中文编程语言的意图;*(尽管这样做并没有什么意义)

7c0c952c44cafed8a2197be88f496435.png

package Chinese.utils;包里内容

f9ab237ed11abbddedeb241623f6eec9.png

public enum 布尔 {

假,真;

}

public final class 工具 {

public static boolean 不为空(Integer length) {

if(length==0) {

return false;

}else {

return true;

}

}

}

public class 基础类型工具 {

public static final boolean 假=false;

public static final boolean 真=true;

public static 字符串 声明字符串(String 内容) {

return new 字符串(内容);

}

public static 数字 声明数字(String 内容) {

return new 数字(内容);

}

public static void main(String[] args) {

字符串 字符串 = 基础类型工具.声明字符串("搜索");

控制台.标准换行输出(字符串);

}

}

public class 控制台 {

public final static void 标准输出(字符串 内容) {

System.out.print(内容);

}

public final static void 标准输出(String 内容) {

System.out.print(内容);

}

public final static void 标准换行输出(字符串 内容) {

System.out.println(内容);

}

public final static void 标准换行输出(Object 内容) {

System.out.println(内容);

}

public final static void 标准换行输出(String 内容) {

System.out.println(内容);

}

public final static void 标准换行输出(数字 内容) {

System.out.println(内容);

}

}

包装的数字类

public class 列表 extends ArrayList{

/**

*

*/

private static final long serialVersionUID = 1L;

/**

*

*/

private ArrayList contents;

public 列表() {

super();

this.contents = new ArrayList<>();

}

public void 增加(T t) {

contents.add(t);

}

public Integer 获取长度() {

return contents.size();

}

@Override

public Iterator iterator() {

return contents.iterator();

}

@Override

public int size() {

return contents.size();

}

@Override

public T get(int index) {

return contents.get(index);

}

@Override

public String toString() {

return "列表 [contents=" + contents + "]";

}

}

public class 数字 {

private BigDecimal bDecimal;

public 数字(String val) {

super();

this.bDecimal = new BigDecimal(val);

}

public BigDecimal getbDecimal() {

return bDecimal;

}

public void setbDecimal(BigDecimal bDecimal) {

this.bDecimal = bDecimal;

}

@Override

public String toString() {

return bDecimal.toString();

}

}

public final class 系统 {

public static void 退出() {

System.exit(0);

}

}

public final class 字符串 {

private static String val;

public static void 声明字符串(String val) {

字符串.val = val;

}

public 字符串(String val) {

super();

字符串.val = val;

}

public String getVal() {

return val;

}

public void setVal(String val) {

字符串.val = val;

}

@Override

public String toString() {

return val;

}

}

测试一下:

实体代码

这里要说明一下;本来这样是完全可以使用自己定义的所有类型的,但是由于在实际编码中在Main函数中并不是那么美观,所以这里还是使用java本身提供的基础类型。当然你可以选择自己去实现一下

public class 学生 {

//private 字符串 姓名;

private String 姓名;

private Integer 年龄;

public String 获取姓名() {

return 姓名;

}

public void 设置姓名(String 姓名) {

this.姓名 = 姓名;

}

public Integer 获取年龄() {

return 年龄;

}

public void 设置年龄(Integer 年龄) {

this.年龄 = 年龄;

}

@Override

public String toString() {

return "学生 [姓名=" + 姓名 + ", 年龄=" + 年龄 + "]";

}

}

测试代码:

public class test {

public static void main(String[] args) {

列表 学生列表 = new 列表();

学生 学生1 = new 学生();

学生1.设置姓名("tomcat");

学生1.设置年龄(20);

学生 学生2 = new 学生();

学生2.设置姓名("apache");

学生2.设置年龄(33);

学生列表.增加(学生1);

学生列表.增加(学生2);

if(!(工具.不为空(学生列表.获取长度())==基础类型工具.真)) {

控制台.标准换行输出(基础类型工具.声明字符串("列表中没有数据"));

系统.退出();

}

for(学生 学生详情:学生列表){

控制台.标准换行输出(学生详情.获取姓名());

控制台.标准换行输出(学生详情.获取年龄());

}

}

}

效果: 与那张图片对比还是差不多

a5a85a477e7a1e7a720b408b97222d25.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值