为啥我得到“类型测试的重复修饰符”以及如何修复它
Posted
技术标签:
【中文标题】为啥我得到“类型测试的重复修饰符”以及如何修复它【英文标题】:Why am i getting " Duplicate modifier for the type Test" and how to fix it为什么我得到“类型测试的重复修饰符”以及如何修复它 【发布时间】:2016-07-12 00:05:19 【问题描述】:如果给定的“字符串”是字谜,我试图创建一个返回 true 的方法。不幸的是,我什至无法对其进行测试,而且我不知道出了什么问题。左边的标记说:
此行有多个标记 - 断点:测试 - 复制修饰符 输入测试
这里是源代码:
package zajecia19;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.HashMap;
public
public class Test
public static boolean Anagraamy(String s1, String s2)
if (s1.length() != s2.length())
return false;
HashMap<Character, Integer> map = new HashMap<>();
for (int i = 0; i < s1.length(); i++)
if (map.containsKey(s1.charAt(i)))
map.put(s1.charAt(i), map.get(s1.charAt(i)) + 1);
else
map.put(s1.charAt(i), 1);
if (map.containsKey(s2.charAt(i)))
map.put(s2.charAt(i), map.get(s2.charAt(i)) - 1);
else
map.put(s2.charAt(i), -1);
for( Integer value: map.values())
if(value != 0 )
return false;
return true;
public static void main(String[] args)
try (BufferedReader br = new BufferedReader(new FileReader("slowa2")))
System.out.println( Anagraamy("abba", "babb"));
catch (Exception e)
e.printStackTrace();
【问题讨论】:
从您的代码中删除多余的public
。
在学习 Java 时有一点非常重要:相信编译器。如果它告诉您一些“重复”;并给你一个行号;而不是转向那条线,看看那里有什么;也许之前的行是什么。此外:避免在运行编译器之前编写大量代码。始终尝试只编写小块(您认为:这应该编译);然后运行编译器;修正错误;如果可能的话,调整代码来测试它。先写100行代码;然后开始修复错误会使整个事情更加对你来说更难!
【参考方案1】:
因为你有
public
public
那里。
解决这个问题的明显方法:删除第一个。下一次:注意编译器试图告诉你的内容。
【讨论】:
@SadiqAli 主要是关于堆栈溢出,有点关于quora。为什么要问? 看到这个,只是想象你在课堂上摇头。 老实说,我不介意。这个问题写得很好,格式也很好。也很有礼貌。新手提出的许多问题要糟糕得多。以上是关于为啥我得到“类型测试的重复修饰符”以及如何修复它的主要内容,如果未能解决你的问题,请参考以下文章
构建错误:[NSManagedObjectContext *localContext] - 为啥以及如何修复它?
为啥我通过安装项目而不是 EXE 安装 DLL 以及如何修复它?