程序设计

专业和发烧友程序员的问答

6
在Scala中使用def,val和var
class Person(val name:String,var age:Int ) def person = new Person("Kumar",12) person.age = 20 println(person.age) 这些代码行输出12,即使person.age=20已成功执行。我发现发生这种情况是因为我使用了def in def person = new Person("Kumar",12)。如果我使用var或val,则输出为20。我了解Scala中的默认值为val。这个: def age = 30 age = 45 ...给出编译错误,因为默认情况下为val。为什么上面的第一行行不能正常工作,但是也不会出错?
158 scala 

3
在Intellij IDEA / Android Studio中使用合并根标签预览布局
假设我们正在开发基于LinearLayout的复合组件。因此,我们创建这样的类: public class SomeView extends LinearLayout { public SomeView(Context context, AttributeSet attrs) { super(context, attrs); setOrientation(LinearLayout.VERTICAL); View.inflate(context, R.layout.somelayout, this); } } 如果将LinearLayout用作的根,则将somelayout.xml具有额外的视图级别,因此我们使用merge标签: <?xml version="1.0" encoding="utf-8"?> <merge xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Some text" android:textSize="20sp"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Some other text"/> </merge> 但是在IDE的“预览”选项卡中,合并始终充当FrameLayout,我们将看到类似的内容: (这是Android Studio,Intellij IDEA也是一样,关于Eclipse我不知道) 预览大大加快了版面的开发速度,令人遗憾的是,即使对于某些版面,失去这么大的帮助。也许有一种方法可以指定,预览应如何解释merge特定布局中的标签?


4
为什么4 * 0.1的浮点值在Python 3中看起来不错,但3 * 0.1却不这样?
我知道大多数小数都没有确切的浮点表示形式(浮点数学运算符是否损坏?)。 但是,当两个值实际上都具有丑陋的十进制表示形式时,我看不出为什么4*0.1将其很好地打印为0.4,但3*0.1不是这样: >>> 3*0.1 0.30000000000000004 >>> 4*0.1 0.4 >>> from decimal import Decimal >>> Decimal(3*0.1) Decimal('0.3000000000000000444089209850062616169452667236328125') >>> Decimal(4*0.1) Decimal('0.40000000000000002220446049250313080847263336181640625')

3
函数声明不是原型
我有一个我创建的图书馆 mylib.c: #include <mylib.h> int testlib() { printf("Hello world\n"); return (0); } mylib.h: #include <stdio.h> extern int testlib(); 在我的程序中,我尝试调用此库函数: myprogram.c: #include <mylib.h> int main (int argc, char *argv[]) { testlib(); return (0); } 当我尝试编译该程序时,出现以下错误: 在myprogram.c中包含的文件中:1 mylib.h:2警告:函数声明不是原型 我正在使用: gcc (GCC) 3.4.5 20051201 (Red Hat 3.4.5-2) 我的问题是,声明函数原型的正确方法是什么?
158 c  gcc 

23
如何使用jQuery使用按钮来选中/取消选中所有复选框?
我正在尝试使用jQuery选中/取消选中所有复选框。现在,通过选中/取消选中父复选框,所有子复选框也将被选中/取消选中,父复选框的文本也将变为checkall / uncheckall。 现在,我想用输入按钮替换父复选框,然后将按钮上的文本也更改为checkall / uncheckall。这是代码,任何人都可以调整代码吗? $( function() { $( '.checkAll' ).live( 'change', function() { $( '.cb-element' ).attr( 'checked', $( this ).is( ':checked' ) ? 'checked' : '' ); $( this ).next().text( $( this ).is( ':checked' ) ? 'Uncheck All' : 'Check All' ); }); $( '.cb-element' ).live( 'change', function() …
158 jquery  checkbox  uncheck 

8
检查属性是否具有属性
给定类中具有属性的属性-确定它是否包含给定属性的最快方法是什么?例如: [IsNotNullable] [IsPK] [IsIdentity] [SequenceNameAttribute("Id")] public Int32 Id { get { return _Id; } set { _Id = value; } } 确定其具有“ IsIdentity”属性的最快方法是什么?
158 c#  performance 

16
如何在Android上以编程方式启用或禁用GPS?
我知道关于在Android 上 以 编程方式打开/关闭GPS的问题已经讨论了 很多 次,答案始终是相同的: “出于安全/隐私原因,您不能,必须转到位置首选项屏幕,然后让用户启用/禁用它。” 我了解,但是我最近是从市场上购买Tasker的,除此以外,您还可以设置规则以在进入预定应用程序时自动启用GPS并在退出时将其禁用(请参见此处,有关如何执行此操作的教程,它就可以使用!),此应用无法使用固件签名密钥进行签名,因为它可以在许多android版本和不同的设备上使用,甚至不需要扎根。 我想在我的应用程序中执行此操作。当然,我不想破坏用户的隐私,因此我首先会询问用户是否要使用典型的“记住我的决定”复选框自动打开它,如果他回答是,请启用它。 是否有人对Tasker如何实现这一目标有任何想法或线索?
158 android  gps 


4
子类化UIView的正确做法?
我正在研究一些基于UIView的自定义输入控件,并且正在尝试确定用于设置视图的正确做法。当一个UIViewController的工作,这是相当简单的使用loadView和相关viewWill,viewDid方法,但是继承一个UIView的时候,我有最接近methosds是`awakeFromNib,drawRect和layoutSubviews。(我在考虑设置和拆卸回调的问题。)就我而言,我在中设置框架和内部视图layoutSubviews,但屏幕上看不到任何内容。 确保我的视图具有想要的正确高度和宽度的最佳方法是什么?(尽管可能有两个答案,但无论是否使用自动版式,我的问题都适用。)什么是最佳的“最佳实践”?

8
如何在控制台的同一位置写入输出?
我是python的新手,正在编写一些脚本来自动从FTP服务器等下载文件。我想显示下载进度,但是我希望它保持不变,例如: 输出: 正在下载文件FooFile.txt [47%] 我正在尝试避免这样的事情: Downloading File FooFile.txt [47%] Downloading File FooFile.txt [48%] Downloading File FooFile.txt [49%] 我应该怎么做呢? 复制: 如何在命令行应用程序的当前行上打印?





By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.