I have a question. I don't know this makes any sense but i really need an answer  when i use "==" as  Integer i1 =10; Integer i2 = 10; if(i1 == i2) {System.out.println("same object")}   output = same object  However , if i use "=="  String obj1 = new String("xyz");  String obj2 = new String("xyz");  if(obj1 == obj2)    System.out.println("obj1==obj2 is TRUE"); else   System.out.println("obj1==obj2 is FALSE");   output = FALSE  I know that "==" operator looks for the memory location of the object. But what happened in first example; i1 and i2 are not a different objects?
I've been using the == operator in my program to compare all my strings so far. However, I ran into a bug, changed one of them into .equals() instead, and it fixed the bug.  Is == bad? When should it and should it not be used? What's the difference?
Each event has two possible outcomes: a and b.  Each event is independent.  Outcome a has $X\%$ chance of happening.  If we run $Y$ number of such events, what are the chances of getting $K$ outcomes a in a row, at least once?  To put it in practical terms imagine a series of coin tosses. Each coin toss has two possible outcomes: a = heads and b = tails. Outcome a = heads has a chance of $50\%$. If we run $Y = 100$ number of coin tosses, what are the chances of getting $K = 10$ outcomes a=heads in a row, at least once?   I'm using the practical example only so I can express the idea more clearly. I'm interested in finding out the general formulas and computations so that I can run the calculations for any $X$, $Y$, or $K$.  I would also be very interested in knowing how the probabilities would change if the events would not be independent. What if the more outcomes a we have in a row the bigger the chance of getting an outcome a in the next event? What if it's the other way around, and the more outcomes a in a row we have the lower the chance of getting another a? How do I embed a gather environment within a custom environment? I've tried defining the following custom environment, but I get errors:     \begin{gather} ended by \end{solution}   etc...   Here's a MWE showing my problem:  \documentclass{article}  \usepackage[fleqn]{mathtools}  \newenvironment{solution}{%  &lt;-Solution   \par\addvspace{1em}   \itshape{Solution:}\par\begin{gather}}   {\end{gather}\par\normalfont\hfill\qed\par\addvspace{\medskipamount}}%  \begin{document}   \begin{gather}     testing   \end{gather}    %% This does not work:   \begin{solution}     testing   \end{solution} \end{document} TikZ or cryptocode package for cryptographic protocol diagrams New flagging dialog has a duplicate for duplicate We've changed the flagging format from today(AFAIK) as below,        looks good.  But, when I select it should be closed for another reason...  I can see the same reason duplicate on the top.        What is the need of placing that reason over there? It should not be there. Please remove the dupe. XGBoost Loss function Approximation With Taylor Expansion As an example, take the objective function of the XGBoost model on the $t$'th iteration:  $$\mathcal{L}^{(t)}=\sum_{i=1}^n\ell(y_i,\hat{y}_i^{(t-1)}+f_t(\mathbf{x}_i))+\Omega(f_t)$$  where $\ell$ is the loss function, $f_t$ is the $t$'th tree output and $\Omega$ is the regularization. One of the (many) key steps for fast calculation is the approximation:  $$\mathcal{L}^{(t)}\approx \sum_{i=1}^n\ell(y_i,\hat{y}_i^{(t-1)})+g_tf_t(\mathbf{x}_i)+\frac{1}{2}h_if_t^2(\mathbf{x}_i)+\Omega(f_t),$$  where $g_i$ and $h_i$ are the first and second derivatives of the loss function.   What I'm asking for is convincing arguments to demystify why the above approximation works:  1) How does XGBoost with the above approximation compare to XGBoost with the full objective function? What potentially interesting, higher-order behavior is lost in the approximation?  2) It's a bit hard to visualize (and depends on the loss function) but, if the loss function has a large cubic component, then the approximation will likely fail. How is it that this doesn't cause problems for XGBoost? When can I use a forward declaration? I am looking for the definition of when I am allowed to do forward declaration of a class in another class's header file:  Am I allowed to do it for a base class, for a class held as a member, for a class passed to member function by reference, etc. ? Is there any way to increase the drop rate of items? I am trying to show that if $n$ is an odd natural number, then $8$ divides $n^{2}-1.$ I was able to prove that because I know that if $n$ is an odd natural number, then $n^{2}$ can be written as $8k+1$ for some $k\in \mathbb{N}.$ I would like to show this question by using the Euclidian division. Then I wrote $n^{2}-1=8k+r$, where $0\leq r  &lt; 8.$ When $r=2$ we get $n^{2}-1=8k+2.$ Since $n$ is odd, then $n^{2}-1$ is even and I got stuck. Is there way to fix that? How can I stop applications and services from running? Simple way to monitor a multiple URLDownloadSubmit calls? In C, what is the difference between using ++i and i++, and which should be used in the incrementation block of a for loop? Can I install Ubuntu inside Windows? Ubuntu 12.04 won't come with the Windows Installer (Wubi) pre-added. But is there any way to install 12.04 using Wubi? Is the intersection of a closed set and a compact set always compact? TV show that starts with debris encompassing Earth Prove that $\sum^{n}_{r=0}(-1)^r\cdot \large\frac{\binom{n}{r}}{\binom{r+3}{r}} = \frac{3!}{2(n+3)}$ I'm not sure if there's already an existing term for this, so I'm inventing my own. (tl;dr: I call them &quot;chameleon questions&quot; because they change every time you submit or edit an answer.  If you're already intimately familiar with the phenomenon, please skip past the first set of bullet points to where I ask for recommendations.)  I think many of us have experienced this on occasion:  You open up a narrow-looking question, usually dealing with some specific error message.  The question probably contains a snippet of sloppy but not quite awful code; code indicating that the author, typically a new/low-rep user, possibly a , doesn't really know what they're doing.  I'm not trying to be condescending here, they're probably very intelligent and hardworking, but in this specific case, they're clearly in way over their head.  However, as a question, it's not really too bad.  The goal and problem are both clearly stated.  The code is formatted (sort of).  Mort was polite and checked their spelling.  The question looks answerable, although from a rep perspective* it's an obvious dead-end, it's had maybe 3 views in the past 30 minutes.  So you decide, you know what, this person took the time to write up the question properly, they deserve an answer, put on your good citizen hat and throw them a bone.  You slog through the ugly code, find the offending line, direct their attention to it and explain why it's wrong and how it needs to be fixed.  Later, they leave a comment saying that yes, that was indeed the problem and your answer helped them fix it (great!).  Oh, but, now there's another problem (uh-oh...). Something else is broken.  After letting out a long sigh, you read the comment and/or edited question, roll up your sleeves, and write up Take 2, hoping that's the end of it.  And of course it's not the end.  Now maybe the error is gone, but it's not doing what it's supposed to.  If you're anything like me, your patience is now starting to wear thin. It's lousy code and you didn't volunteer to help them rewrite their whole app.  And of course, the question still only has 12 views, and nobody has upvoted either the question or your answer, including the person you're helping, so this is turning out to be a genuinely thankless task in all respects.  Welcome to &quot;Family Tech Support&quot;, Web 2.0 Edition.   * Which is of course just an arbitrary number that none of us care about. Not really, anyway. Not very much, at least.  So, here's where I get to my question.  At this point, do you:  Leave a comment, stating as politely as possible that you've done your best to help them answer the original question they asked, and if they have a new problem then they should start a new question?  (I did this once, and actually ended up with an accept, but I felt kind of guilty afterwards, I don't think anybody answered their 2nd question).  Bite the bullet and edit your answer a 3rd, 4th, 5th time, however many times it takes to resolve their issue, knowing full well that they may not even remember to accept the answer once you're done? (I may work for free on SO, but that doesn't mean my time is worthless.)  Just abandon the question, hoping that it will force Mort to start thinking for himself?  Something else?   I've tried all three of the above and none of them ever quite feel right. I do want to help, but at the same time there are a lot more &quot;lucrative&quot; questions I could be answering. And I don't mind spending a lot of time on an answer either, if the question is interesting or important to me, but debugging is dull work. I'd prefer not to reference specific questions here; I'm pretty sure that this is a shared experience, and my objective isn't to point fingers at &quot;misbehaving&quot; members.  I'm more looking for some practical advice on how to dig myself out of these pits of despair. Anybody have any other ideas? I am using Windows 8 Enterprise on my development machine. Most of the time, I need full administrator for debugging, changing system files, etc.  In Windows 7, setting UAC to "never notify" would disable any administrator prompts. In Windows 8 this is no longer the case. Even with UAC disabled I get prompted to grant programs elevated privileges.  Is there a way disable this behaviour?  Note: I am fully aware of the repercussions. I have antivirus, firewall, etc and am generally quite careful about what I download or install on my machine. What does "Package  has no installation candidate" mean? What does the above Error mean? What is an installation candidate?  I was trying to do  sudo apt-get install munin-memcached     and I get this message:  Reading package lists... Done Building dependency tree        Reading state information... Done Package munin-memcached is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package munin-memcached has no installation candidate   I googled for the problem and someone said to do a apt-get upgrade but it still did not solve my problem. How to change inside background color of UISearchBar component on iOS How to overlay images I want to overlay one image with another using CSS. An example of this is the first image (the background if you like) will be a thumbnail link of a product, with the link opening a lightbox / popup showing a larger version of the image.   On top of this linked image I would like an image of a magnifying glass, to show people that the image can be clicked to enlarge it (apparently this isn't obvious without the magnifying glass).