Java和空白作为语法(类似于Python)?

10 投票
3 回答
717 浏览
提问于 2025-04-16 07:28

有一部分Java的语法让我很烦,那就是大括号和分号。有没有什么工具可以让我用Java的其他语法,但不需要这些东西?我想要的效果是这样的:

public class Hello:
    public static void main(String[] args):
        System.out.println("I like turtles.")

public class Another:
    public static void somethingelse():
        System.out.println("And boobs")

我喜欢Python那种用空格来表示语法的方式,觉得它更简洁,眼睛看着也舒服。如果没有这样的工具,我其实在考虑花时间自己写一个解析器,来实现这个功能。(理想情况下,它能把代码打开,格式化成用空格的样子,然后保存的时候再变回带大括号的Java语法)

这样做会不会在语言的其他地方造成问题?我可能会遇到什么麻烦呢?我想用Java的其他语法,除了这小部分以外,其他都想保持不变。

我在Eclipse里已经能很好地写和读代码了。而且,我也知道怎么使用代码格式化工具和所有的自动补全选项,这只是我个人的编码风格偏好,所以请不要回答我“你应该习惯它”或者“你应该用一个能自动加大括号的IDE”……不,我不想要那样。

3 个回答

0

你可以使用Jython或者Scala,这两种语言省去了大部分的花括号和分号(主要是点和括号)。它们的语法更容易阅读,而且你依然可以使用JVM的强大功能。

不过,如果你需要一个专门的转换器(把代码保存为普通的Java代码),你可以自己轻松写一个这样的转换器。你可以逐行读取输入文件,计算缩进,每当缩进变化时,就删除字符串末尾的冒号(如果需要的话),然后插入花括号:对于增加的缩进插入打开的花括号,对于减少的缩进插入关闭的花括号。(这并没有考虑到所有可能的情况,但大多数情况下被认为是糟糕的风格。)

0

你可以考虑花时间学习使用Eclipse这个工具和代码格式化器。

Python的设计很不错,因为它(或多或少)让所有开发者都遵循相同的代码风格。现在很多软件公司都有自己的代码风格指南,并且使用集成开发环境(IDE)里的格式化工具来帮助大家遵循这些风格。即使你的同事的代码风格(在你看来)很糟糕,你也可以快速把这些代码重新格式化成你觉得好读的样子。

2

你可以试试Jython吗?它结合了Python的语法和Java的运行环境。

撰写回答