本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2024-11(1)

java中如何直接导入println()

发布于2021-03-13 14:37     阅读(678)     评论(0)     点赞(21)     收藏(4)


java中如何直接导入println()

答:绝不可能。不过我们可以换一个思路实现这样的功能。

如果你觉得每次都写System.out.println()这一大长串比较麻烦,想将println直接导入过来却无法实现。特别是如果你会python这类语言后,恨不得想直接仅仅写print()这几个字符就完成打印,那么可以参考本文。


首先必须指出静态导入import static

import static xxx

这个语句导入的可以是静态成员,包括静态常量、静态方法和静态对象引用,但是不能导入println,因为println不是静态成员而是实例方法。(out是 PrintStream 对象的实例)

但是,我们可以认为构造一个静态方法print,甚至为了以后方便,就将它放在某个包中。比如:

// Out.java 文件
package cn.jcstdio.base;

public class Out
{
    public static void print(Object o) 
    {
        System.out.println(o);
        
    }
}

然后在终端运行javac -d Out.java,生成这个包的class文件。接下来我们就可以import static导入和使用print了:

// Generic.java 文件
import java.util.*;
import static cn.jcstdio.base.Out.print;

public class Generic
{
    public static void main(String[] args)   
    {
        ArrayList<String> list = new ArrayList<>();
        
        list.add("Java");
        list.add("python");
        list.add("C#");
        list.add("JavaScript");
        
        print(list);    // 调用print()方法
    }
}

编译:

PS C:\Users\李俊才\Desktop\asdwed>javac -d . Generic

生成了Generic.class文件:
在这里插入图片描述
运行:

PS C:\Users\李俊才\Desktop\asdwed>java Generic

Out[i]:

[Java, python, C#, JavaScript]

- 其中:cn是生成的包的文件夹,在运行`javac -d `时自动生成:
└─cn
    └─jcstdio
        └─base


所属网站分类: 技术文章 > 博客

作者:天天在家

链接:http://www.javaheidong.com/blog/article/114410/72acf2e48d3225c8a4ba/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

21 0
收藏该文
已收藏

评论内容:(最多支持255个字符)