如何编辑java.util.package
我有一个类,它包含一些有用的方法。下面是代码:如何编辑java.util.package,java,package,Java,Package,我有一个类,它包含一些有用的方法。下面是代码: import java.util.Vector; import java.util.Scanner; public class bk { private static int iAsLoopRunner=0; static Scanner takeInput=new Scanner(System.in); public static void print_int(int arr[]) { for(i
import java.util.Vector;
import java.util.Scanner;
public class bk {
private static int iAsLoopRunner=0;
static Scanner takeInput=new Scanner(System.in);
public static void print_int(int arr[])
{
for(iAsLoopRunner=0;iAsLoopRunner<arr.length;iAsLoopRunner++)
{
System.out.print(arr[iAsLoopRunner]+" "+"|"+" ");
}
System.out.println();
}
public static void print_float(float arr[])
{
for(iAsLoopRunner=0;iAsLoopRunner<arr.length;iAsLoopRunner++)
{
System.out.print(arr[iAsLoopRunner]+" "+"|"+" ");
}
System.out.println();
}
public static void print_string(String arr[])
{
for(iAsLoopRunner=0;iAsLoopRunner<arr.length;iAsLoopRunner++)
{
System.out.print(arr[iAsLoopRunner]+" "+"|"+" ");
}
System.out.println();
}
public static void print_double(double arr[])
{
for(iAsLoopRunner=0;iAsLoopRunner<arr.length;iAsLoopRunner++)
{
System.out.print(arr[iAsLoopRunner]+" "+"|"+" ");
}
System.out.println();
}
public static void print_long(long arr[])
{
for(iAsLoopRunner=0;iAsLoopRunner<arr.length;iAsLoopRunner++)
{
System.out.print(arr[iAsLoopRunner]+" "+"|"+" ");
}
System.out.println();
}
public static void print_vector(Vector arr)
{
for(iAsLoopRunner=0;iAsLoopRunner<arr.size();iAsLoopRunner++)
{
System.out.print(arr.get(iAsLoopRunner)+" "+"|"+" ");
}
System.out.println();
}
public static void sop(Object obj)
{
System.out.print(obj+" ");
}
public static void sopln(Object obj)
{
System.out.println(obj);
}
public static int[] getInt(int arraySize)
{
int arrayToReturn[]=new int[arraySize];
for(iAsLoopRunner=0;iAsLoopRunner<arraySize;iAsLoopRunner++)
{
arrayToReturn[iAsLoopRunner]=takeInput.nextInt();
}
return arrayToReturn;
}
public static String[] getString(int arraySize)
{
String arrayToReturn[]=new String[arraySize];
for(iAsLoopRunner=0;iAsLoopRunner<arraySize;iAsLoopRunner++)
{
arrayToReturn[iAsLoopRunner]=takeInput.next();
}
return arrayToReturn;
}
public static float[] getFloat(int arraySize)
{
float arrayToReturn[]=new float[arraySize];
for(iAsLoopRunner=0;iAsLoopRunner<arraySize;iAsLoopRunner++)
{
arrayToReturn[iAsLoopRunner]=takeInput.nextFloat();
}
print_float(arrayToReturn);
System.out.println("done ;)");
return arrayToReturn;
}
public static long[] getLong(int arraySize)
{
long arrayToReturn[]=new long[arraySize];
for(iAsLoopRunner=0;iAsLoopRunner<arraySize;iAsLoopRunner++)
{
arrayToReturn[iAsLoopRunner]=takeInput.nextLong();
}
print_long(arrayToReturn);
System.out.println("done ;)");
return arrayToReturn;
}
public static double[] getDouble(int arraySize)
{
double arrayToReturn[]=new double[arraySize];
for(iAsLoopRunner=0;iAsLoopRunner<arraySize;iAsLoopRunner++)
{
arrayToReturn[iAsLoopRunner]=takeInput.nextDouble();
}
print_double(arrayToReturn);
System.out.println("done ;)");
return arrayToReturn;
}
}
import java.util.Vector;
导入java.util.Scanner;
公共类bk{
私有静态int iAsLoopRunner=0;
静态扫描仪输入=新扫描仪(System.in);
公共静态无效打印\u int(int arr[]
{
对于(iAsLoopRunner=0;iAsLoopRunner,打包的java.util
是java语言的核心包。
不要尝试使用它,因为首先你不能(不允许)使用它,其次,将核心类与自定义类耦合是一种不好的做法。
这是两个不同的层。尝试将它们混合在一起对开发人员来说非常容易出错。
例如,如何将util类与jdk util类区别开来?如果jdk API更新,如何处理冲突?
假设您希望这些util类有两个不同的版本,在您的解决方案中,您也不能这样做,因为所有这些都在JDK中。
最后,对于Maven或Gradle等现代构建工具来说,它显然不是一个约定的、可用的解决方案,在这里您可以指定依赖的库。
如果您想在任何项目中重用抽象类,最好在自定义包中添加抽象类并创建一个特定的库(JAR)。java.util
打包是java语言的核心包。不要尝试使用它,因为首先你不能(不允许)使用它,其次,将核心类与自定义类耦合是一种不好的做法。
这是两个不同的层。尝试将它们混合在一起对开发人员来说非常容易出错。
例如,如何将util类与jdk util类区别开来?如果jdk API更新,如何处理冲突?
假设您希望这些util类有两个不同的版本,在您的解决方案中,您也不能这样做,因为所有这些都在JDK中。
最后,对于Maven或Gradle等现代构建工具来说,它显然不是一个约定的、可用的解决方案,在这里您可以指定依赖的库。
您应该在自定义包中添加抽象类,并创建一个特定的库(JAR)如果您想在任何项目中重复使用它。完全没有必要。将它放在您自己的包中,从那里导入。您可以在应用程序中创建该包并将类放在那里-但是为什么您首先要这样做?为什么不使用自定义包?“这有助于编写更少的代码”-你这是什么意思?顺便说一句,你可能想了解一下你的命名。像
bk
这样的类名不会告诉你太多,也不会遵守Java代码约定,即类名应该以大写字母开头(从长远来看,这将对你有所帮助),方法名称通常不包含下划线,我个人会写double[]arr
而不是double[]arr
,因为这样更清楚的是arr
是名称,而double[]
是类型。另一个建议是:您可能希望对列表
实例进行操作,而不是使用不推荐的向量
,最好使用一些泛型类型。我过去创建了很多项目,所以我想让它有点像全局的。因此,我不需要每次都将包导入每个项目。绝对没有必要。将它放入在您自己的包中,从那里导入。您可以在应用程序中创建该包并将类放在那里-但为什么您首先要这样做?为什么不使用自定义包?“这样可以简化代码编写”-你这是什么意思?顺便说一句,你可能想了解一下你的命名。像bk
这样的类名不会告诉你太多,也不会遵守Java代码约定,即类名应该以大写字母开头(从长远来看,这将对你有所帮助),方法名称通常不包含下划线,我个人会写double[]arr
而不是double[]arr
,因为这样更清楚的是arr
是名称,而double[]
是类型。另一个建议是:您可能希望对列表
实例进行操作,而不是使用不推荐的向量
,最好使用一些泛型类型。我曾经创建过很多项目,所以我想让它有点像全局的。因此,我不需要每次都将包导入每个项目。请建议我一种使用singl的方法在我的电脑中的任何地方进行e打包,而不复制粘贴每个项目中的全部代码。按照建议,创建一个库:一个包含在所有项目中的jar,就像您实际包含JDK jar一样。但这与包含该包几乎相同。这没有多大区别:(编译是的,但通过引入一个库,您可以清楚地区分哪些来自JDK,哪些来自您的类,以及如前所述,如果JDK API更新,如何处理冲突?如果您使用两个不同的包,您就没有这些问题。假设您想拥有这些util类的两个不同版本,那么您的解决方案就无法解决这些问题两者都不是。@bharath有一个巨大的区别:如果你创建一个jar,你必须传递一个文件,并且可以使用该jar中的所有类。如果你想将项目移动到另一台机器上,你也只需要移动一个文件。如果你使用像Maven这样的依赖关系管理器(尽管Maven更重要)您甚至不必手动复制文件,只需将其上载到存储库,并让每个项目将其声明为依赖项。请建议我如何在pc中的任何位置使用单个软件包,而无需复制粘贴每个项目中的全部代码。按照建议,创建一个库:一个jar,您可以将其包含在所有项目中de JDK jars实际上是。但这与包含包几乎相同。这没有多大区别..:(编译是的,但通过引入一个库,您可以清楚地区分哪些来自JDK,哪些来自您的类,以及如前所述,如果JDK API更新,如何处理冲突?如果您使用两个不同的包,则没有这些问题。假设您