对此非常新,所以我希望我的标题中的术语正确.
我试图找出如何创建将执行以下操作的实例方法:
- 返回身份证号码.
- 由于每个对象是从类构造函数(实例化?)创建的,因此会为其分配唯一的整数ID号.第一个ID号是1,并且当实例化新对象时,将分配连续的数字.
我能够找到上面做的类/静态方法的例子但是我无法弄清楚如何用实例方法做到这一点.我的尝试如下:
class Coordinates
{
private int iD = 0;
private float xCoordinate;
private float yCoordinate;
public Coordinates()
{
//Asks for input and assigns it to the two variables below
Scanner keyboard = new Scanner(System.in);
System.out.println("Please enter the X Coordinate followed by the return key");
xCoordinate = keyboard.nextDouble();
System.out.println("Please enter the Y Coordinate followed by the return key");
yCoordinate = keyboard.nextDouble();
iD++;
}
public getiD()
{
return iD;
}
}
Run Code Online (Sandbox Code Playgroud)
我的主要方法如下:
public class …Run Code Online (Sandbox Code Playgroud) 嗨我的问题与很久以前某个用户的帖子有关:
对于我的具体情况.我有一个这样的列表:
appl = ['1', 'a', 'a', '2', 'a']
Run Code Online (Sandbox Code Playgroud)
我想只用一个空的空格(它保存"a"的位置)来替换"a"的"单个未知"实例.我不确定如何只为一个角色做这件事.有人可以帮忙吗?提前致谢.
编辑:我应该提到我需要使用"索引"函数来首先找到"a",因为它是一个变化的变量.然后我需要代替字符的代码.
EDIT2:很多人都假设索引会是2,但我想指出的是该字符的索引是未知的.此外,"a"将在列表中出现约20次(将保留固定数字),但它们的位置将会发生变化.我想根据用户输入替换"a".这是我正在使用的实际列表:
track [2] = ["|","@","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"," ","|"]
Run Code Online (Sandbox Code Playgroud)
@是一个charachter,| 是一个边界,""是一个空的空间.用户输入输入以选择向右移动的数量,并显示一个新图像,显示@的新位置,并将@的旧位置替换为空格.列表的长度保持不变.这是我的问题的背景.
我原来的python程序使用字符串插值来取一个用户在0-9999之间输入的数字,如2928,并将其各个数字(2 + 9 + 2 + 8 = 21)相加,然后将数字分开,直到它最终成为单个数字数字(在本例中为3),显示在屏幕上.代码如下所示:
现在我需要找出一种方法来做同样的事情,而不使用字符串插值(将整数转换为字符串然后拆分字符串,将它们重新转换为整数,并将它们相加).我是python的新手,因此可以使用非常简单的命令(最复杂的是while循环)任何人都可以帮助我/给我一些想法吗?
*ps,我想有些年份存在歧义."year"是我上面没写过的命令,但是它的代码使用户输入0-9999之间的数字.我将其变量名称更改为"yearint",因为我是python的新手,并希望使描述性更强,所以当我回顾时我能记住它们.所以基本上年/年是用户输入的输入.
执行以下行后,EAX中的值是多少?
mov eax, 1002FFFFh
inc ax
Run Code Online (Sandbox Code Playgroud)
答案是1002000h.
我的问题是,为什么答案没有1003 0000h,或者1002 0000h考虑到我们最初从32位开始,答案是32-4位.
用于 ARM 组装
我一直在我的子程序中执行以下操作:
SubRoutine:
PUSH {r1,r2,lr}
//code that changes r1 and r2
POP {r1,r2,lr}
bx lr
Run Code Online (Sandbox Code Playgroud)
这是从子程序返回并继续执行主函数中代码的正确方法吗?我看到周围的人正在做以下事情:
SubRoutine:
PUSH {r1,r2,lr}
//code that changes r1 and r2
POP {r1,r2,pc}
bx lr
Run Code Online (Sandbox Code Playgroud)
但我不知道为什么你在推 LR 时会 POP 电脑。哪个是正确的方法,为什么?
此外,如果您在子例程中调用子例程,请执行以下操作:
SubRoutine:
PUSH {r1,r2,lr}
//code that changes r1 and r2
PUSH {lr}
bl AnotherRoutine (where bx lr will be used to return from it)
POP {lr}
POP {r1,r2,pc}
bx lr
Run Code Online (Sandbox Code Playgroud)
或者你是这样做的:
SubRoutine:
PUSH {r1,r2,lr}
//code that changes r1 and r2
PUSH {lr}
bl AnotherRoutine(where …Run Code Online (Sandbox Code Playgroud) 我对编程很陌生.这与python有关.因此,我们的想法是采用一个表达式,例如3/5或最多3/5*2(最多两个运算符,注意运算符可以是+, - ,/,*中的任何一个)并解决它.空格可以存在于表达式中的任何位置.
用户输入表达式,比如3/5,程序需要解析表达式并显示答案.我试过的是下面的内容.注意,我只尝试了第一部分,一旦我可以正确地分割用户输入的原始表达式(这将是一个字符串),创建函数将是容易的部分:
expres= str(input("something:"))
ssplit= hit.partition("/")
onec= int((ssplit[0].lstrip()).rstrip())
twoc= (ssplit[1].lstrip()).rstrip()
threec= int((huns[2].lstrip()).rstrip())
print(onec,"...",twoc,"...",threec) #just a debug test print
Run Code Online (Sandbox Code Playgroud)
所以上面,我可以采用类似3/5的表达式并将其拆分为三个单独的字符串:3,/和5.我还可以删除运算符/操作数之前和之后的所有空格.我有分裂像4/5 + 6这样的表达式的问题,因为我无法将代码放入ssplit [3]或ssplit [4],然后输入类似3/5的表达式,因为它不会被定义.基本上我需要你帮助找出如何分割像3/4-6等表达式.我还需要" ssplit= hit.partition("/")" 行的帮助,以便它将查看输入的表达式并使用+, - 和*.任何和所有的帮助表示赞赏.如果我上面的代码看起来讨厌和低效,请给我批评.谢谢!
注意我不能,也不想使用eval.操作顺序是必需的.我不能使用复杂的命令.我需要保持简单,我可以使用的最多是字符串库,在字符串/整数/浮点数等之间进行转换以及if和等等.声明.我也可以使用功能.