我看了其他帖子,并加了a running code of my own。也许你应该看看那里。它产生三角形和一切。 无论如何,这不是一个“命名约定”的问题,如果将问题改为“如何在java中创建实例”,可能会得到正确的反馈。
完整的代码我写的有(如果你不喜欢点击链接)在这里以及在任何空白其他人离开应填写为您填写:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class Triangle
{
private int[]sides;
public Triangle(int x, int y, int z)
{
sides = new int[]{x,y,z};
Arrays.sort(sides);
}
public Triangle(String ... args)
{
this(Integer.parseInt(args[0].trim()), Integer.parseInt(args[1].trim()), Integer.parseInt(args[2].trim()));
}
@Override
public boolean equals(Object o)
{
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
Triangle triangle = (Triangle) o;
if (!Arrays.equals(sides, triangle.sides)) return false;
return true;
}
@Override
public int hashCode()
{
return sides != null ? Arrays.hashCode(sides) : 0;
}
@Override
public String toString()
{
return "Triangle{" +
"sides=" + Arrays.toString(sides) +
'}';
}
public static void main(String[] args) throws IOException
{
String[] input = new String[]{ "1,2,1" , "1,1,2", "1,2,3","1,3,1","1,1,1","1,3,3","1,1,3"};
Set<Triangle> triangles = new HashSet<Triangle>();
for (String s : input)
{
triangles.add(new Triangle(s.split(",")));
}
System.out.println("triangles = " + triangles);
}
}
这是什么都处理“命名约定”? – 2011-12-26 17:28:25
问题的标题与其内容无关。请编辑它。 – 2011-12-26 17:28:54