Java 中的".class"错误
'.class.' error in java
我尝试了一个在C++上运行良好的问题;这是C++实现。
#include<iostream>
#include<string>
#include<string.h>
using namespace std;
int main()
{
int t;
char str[1000100];
char num[1010];
cin>>t;
while(t--)
{
cin>>num;
cin>>str;
int a=strlen(str);
int b=strlen(num);
int x=0;
int flag=0;
int m=0;
for(int j=0;j<2*b;j++)
{
if(m==b)
{
flag=1;
m--;
}
if(m==0)
{
flag=0;
}
num[j]=num[m];
if(flag==0)
m++;
if(flag==1)
m--;
}
for(int i=0;i<a;i++)
{
if(x==2*b)
x=0;
if((str[i]-(num[x]-'0'))<97)
str[i]=char(str[i]-(num[x]-'0')+26);
else
str[i]=char(str[i]-(num[x]-'0'));
x++;
}
cout<<str<<endl;
//cout<<num;
}
return 0;
}
这是我的 Java 实现。
import java.util.Scanner;
class sngmsg
{
public static void main(String[] s)
{
Scanner sc=new Scanner(System.in);
int t;
/*char[] str;
str = new char[1000100];
char[] num=new char[1010];*/
String str;
String num;
char[] num1=new char[1010];
char[] str1=new char[1000100];
t=sc.nextInt();
for(int l=0;l<t;l++)
{
num=sc.next();
str=sc.nextLine();
int a=str.length();
for(int c=0;c<a;c++)
str1[c]=str.charAt(c);
int b=num.length();
int x=0;
int flag=0;
int m=0;
for(int j=0;j<2*b;j++)
{
if(m==b)
{
flag=1;
m--;
}
if(m==0)
{
flag=0;
}
num1[j]=num.charAt(m);
if(flag==0)
m++;
if(flag==1)
m--;
}
for(int i=0;i<a;i++)
{
if(x==2*b)
x=0;
if(int(str1[i])-(num1[x])<97)
str1[i]=char(int(str1[i])-num1[x])+26);
else
str1[i]=char(str1[i]-(num1[x]-'0'));
x++;
}
}
}
}
在本节中
if(int(str1[i])-(num1[x])<97)
str1[i]=char(int(str1[i])-num1[x])+26);
else
str1[i]=char(str1[i]-(num1[x]-'0'));
x++;
它给出了一个错误:
unexpected type
required:value
found: class
'.class' expected
; expected
以及这些行中的类似错误。有什么帮助吗?
应该是
if((int)(str1[i])-(int)(num1[x])<97)
强制转换运算符应该在它们上面有 (),例如 (int
) 1 和 (char) 'a' 而不是 int(1) 或 char('a')int
和char
不是函数,而是原语。
str1[i]=char(int(str1[i])-num1[x])+26)
您正在尝试将int
用作函数。你对它有什么期望?
通常,您将有一个带有main方法的公共类。似乎您正在编译您的类并且无法执行它。这样做是为了解决您的问题:
1 - 使用您的类名创建一个文件,例如"MyClass.java"
2 - 您的班级声明需要公开:
public class MyClass {
// your code here
}
3 - 将 main 方法放在创建的类中:
public class MyClass {
public static void main( String[] args ) {
// your code here
}
}
4 - 编译它(javac MyClass.java)
5 - 执行它:java MyClass
您的代码似乎也存在一些问题。如果要强制转换某些基元或引用类型,则需要将所需的类型放在括号内。像这样:
// a char
char c = 'a';
// casting that char to an integer
int i = (int) c;
让我知道它是否有效。
文件开头缺少包名称。此外,该类应该是公开的。
package something.somethingelse;
import java.util.Scanner;
public class sngmsg{
相关文章:
- 错误:"Left of getValue must have class/struct/union"
- 当初始值设定项是基类名时'initializer does not name a non-static data member or base class'错误
- unordered_set .find 方法无法编译的 C++ "expression must have class type"错误
- C++错误:"class name"之前的预期类型说明符
- 错误:'class std::unique_ptr<std::set<long unsigned int> >'没有名为 'size' 的成员
- C++ 中的类之间的数据重新循环 - 错误:'<class name>'未在此范围内声明
- 获取生成错误:错误 C2011:'ProfileSettings':'class'类型重定义
- 错误 LNK2001:未解析的外部符号"private: static class Game Game::game_"
- C++编译错误:重新定义'class::class'
- VS2017模板专用化错误无法从'Class *(__cdecl *)(Args...)'转换为'Class *(__cdecl *)(Args...)'
- 在 C++ 中对"Class::function()"错误的未定义引用 [CLion IDE]
- 调用 list.size() 方法给出错误"expression must have class type"
- C++ 中的"this declaration has no storage class or type specifier"错误
- 将数据添加到 CArray 会产生错误"cannot access private member declared in class 'CObject'"
- 如何修复派生类给出错误'declaration has no storage class or type specifier'?
- 为什么我会收到"Expression must have a class type"错误?(C++)
- 让编译器告诉哪些方法不具体,而不是错误'invalid new-expression of abstract class type'
- 共享库中非模板基的模板子类导致未定义的符号类型信息'class'链接错误
- 如何修复编译器错误"class has no member named X"?
- 直接显示过滤器错误"Class is not registered"